IIS 7 and Above
Error during CPU limit configuration
Last post Jan 06, 2020 02:14 AM by Jalpa Panchal
Jan 03, 2020 03:01 PM|Alexey shirshov|LINK
We have Windows Server 2012R2 and IIS 8.5.
One of app pools eats to much of CPU, so we decide to limit it.
In IIS manager I set appropriate values and press ok. It seems all saved but in error log I found the following entry
"The job object associated with application pool 'apppool-name' encountered an error during configuration. CPU monitoring may not function as expected. The data field contains the error number."
I check C:\Windows\System32\inetsrv\config\applicationHost.config and found under apppools section
<add name="apppool-name" autoStart="true">
<cpu limit="14000" action="Throttle" resetInterval="00:01:00" />
In fact CPU throttling doesn't work. App pool can eat up to 90% CPU in the duration of hours but monitoring subsystem does not kill it.
So how to configure CPU limit properly?
Jan 06, 2020 02:14 AM|Jalpa Panchal|LINK
First, you need to find which part of the code is causing the high CPU usage by using the Debug Diagnostics tool.
Could you share which kind of application you are using(asp.net, PHP, etc)?
Did you set any recycling value in your application pool?
When you set iis application pool limit action as Throttle the CPU consumption is limited to the value set in Limit. The Limit interval is not used and an event log entry is generated.
If you want to kill that worker process when CPU limit exceed then you could use an action as KillW3wp.Application pool worker processes that exceed their CPU limit will be forced to shut down.
You could refer below article for more detail:
Troubleshooting High CPU in an IIS 7.x Application Pool
How to Troubleshoot IIS Worker Process (w3wp) High CPU Usage
CPU Settings for an Application Pool <cpu>