Amy is running a nice eCommerce site, which revolves around sewing. You can find it here: She reached out to me because she was experiencing occasional timeouts and problems with rendering her website at all. This was causing trouble for her customers. Luckily, the website was hosted with a provider, who supports the New Relic tracing agent. So I’ve activated the New Relic and let it collect some data. Then the detective’s work has begun.

I’ve identified a problematic plugin, which was running thousands of requests across the site and flooding the database. The database workers were fully loaded with the plugin’s job, so when a user visits the site, he has to wait, until some MySQL worker has been released. And this was causing the timeouts. I’ve de-activated the plugin and also installed a different caching solution there.

The second spike in the PHP execution time was caused by the interaction of the newly installed caching plugin with other sites.