I have a site that has been running for a few weeks and then this past weekend the host shut down the site because it was using too much CPU all of the sudden. It looked like this was caused by excessive crawling by Google, so I changed the crawl rate there and at Bing.
I brought the site back up and it ran fine for two day, then last night went down due to excessive CPU usage.
Any ideas on how to fix this or even identify the problem? Are there any diagnostic tools out there that can monitor resource usage over time and map it to what a user is doing? All my admins can tell me is that the problem resides with index.php. Obviously, not a lot of help.
In that regard, are there better hosts for an e-commerce site with few products (<500) and few orders (20 a day at most)? Hostgator is cheap, but not helpful.
If your site is taken down by a Google crawl I think it is about time to switch hosts! You want your host to be an enabler for your business, not an obstacle. With a properly configured server you can set limits per visitor to ensure not a single user will be able to make excessive use of the CPU. On a shared server this can be implemented with CloudLinux and on a dedicated server there are ways to tweak the web server to alleviate such peaks in traffic.
Do you know what sort of CPU usage are you using and what is your CPU limits?
Generic hosting providers like HostGator usually allocates only a very small amount of CPU as they tend to cram as many accounts into their servers as possible so your website may not be using a lot of CPU at all.
you need to use full page cache like LestiFPC , set cache lifetime to max and thats it.
A Full Page Cache does not fix the real problem and should only be implemented after all other best practices have been applied. Not every page can be cached so it is important to improve uncached performance as much as possible.