Having a problem here.
One DNN 8.0.4 instance regularly suffers high CPU usage, just in recent couple of months. My other identical DNN 8.0.4 instances on the same server do not have this issue.
- IISPeek shows me that a specific request will have a high request time.. i.e. the request doesn't complete.
- The request does not clear itself. It just keeps getting longer.
- The high CPU will drop to normal with an application pool recycle... until it happens again.
- The IP's I have examined seem to belong to search bots.
- I blocked the Chinese bot and that worked. However this week it's Google bot, and I'm not quite so keen to block that.
The file requested tends to be a client resource file, or a sitemap. The dependency file doesn't exist and I expect the sitemap doesn't either but I can't pinpoint the specific portal requested.
This is what IISPeek typically shows me:
- URL: /DependencyHandler.axd/36acd99b11d0ec8f4d81c741ef9e0ce2/2606/css
- Elapsed (Sec): 2272
- ClientIP: 184.108.40.206
- URL: /sitemap.aspx
- Elapsed (Sec): 7235
- ClientIP: 220.127.116.11
As part of troubleshooting, I cleared out the \App_Data\ClientDependency folder. I also stopped the DNN application, re-applied the file system permissions, cleared out the \Temporary ASP.NET Files\root folder and restarted the server so that everything would be fresh.
So, why would these specific requests lead to high CPU and how would one stop it?
At the moment I'm recycling the app every hour and still blocking the Chinese search bot, but this is not the right solution.
Any ideas appreciated.