yes, you need some sort of limits , apache server is pretty hard to configure this way, even latest version, in nginx its just a few lines in config.
http://nginx.org/en/docs/http/ngx_http_limit_req_module.html
for apache it is probably mod_ratelimit mod_limitipconn
http://bloke.org/apache/limit-apache-requests-per-ip-address-with-mod_limitipconn/
I have now put a bay on the Majestic12 bot using the guides you guys sent me but it seems to be fake google bots now, bots that are searching terms like: sex and is paul walker dead etc just all very odd search terms considering I seel gym clothing on my site
does any one have a guide on how to block these fakers?