I'm not a Silverstripe/PHP expert at all, but I'm running seven small Silverstripe on IIS 7.0 on a Windows 2008 Server. The server also hosts other applications that use MS SQL Server 2008 databases which are also hosted on this server. All of a sudden the week before last I start getting timeouts from the databases which are used by some of the non-Silverstripe sites.
The timeouts are caused by a terribly busy CPU which is running at a 100% most of the time. I investigate for several nights and I finally succeed in pinpointing the actual application within the IIS that is using most of the CPU power. It turns out that it's one of the seven Silverstripe sites and I haven't made any changes to either of them on the server in at least six months. So it's very weird that all of a sudden one of them would act up like this. The site in question is using Silverstripe v. 2.4 and uses modules User Forms and Blog.
I've tried installing and switching to the latest version of PHP. Via PHP-MyAdmin, I tried optimizing the database for all the Silverstripe sites on the server. I tried running ...dev/build/?flush=1. But none of these helped.
The only thing that helps the server right now is stopping the site in question, but my customer is not exactly satisfied by this ;-)
I've attached a picture of how the taskmanager looks most of the the time when the site is running. The "ss_projekter.nu" is the local user I created on the server and set on the application pool running the site in question, so that I could pinpoint which application is the culprit.
I don't know how much traffic the site in question is getting, but I don't think it's a lot. Is there any way to see how much traffic a given Silverstripe site is receiving through logfiles for instance?
And where would I find logfiles that might show me what is happening with this site since it needs to use so much CPU power?
Any help would be much appreciated.