Вопрос

I have been attempting to implement a CPU cap for a specific IIS application pool running on a web server (Win2K8 R2). I have tried using Windows System Resource Manager using several different process matching criteria, but the process never actually gets capped.

First Attempt

The first process matching criteria I got from here. The actual matching criteria I entered was @w3wp.exe.*MyAppPoolName

Then I created my resource allocation policy, and pointed it at the above process matching criteria. I capped the CPU at 25%, enabled the policy, started my app pool, and kicked off the application running in the pool. The app pool's CPU immediately spiked over the 25% limit and stayed there fairly consistently.

Second Attempt

The next matching criteria I tried came from here. The actual matching criteria I entered was @.*w3wp\.exe.*MyAppPoolName.*

I updated my allocation policy to point to the new matching criteria, and started everything back up. Again, immediately spiked over the limit.

Third Attempt

On my third and final attempt, I used the built-in controls in the Add Rule dialog in WSRM. I selected IIS App-Pool from the drop-down, clicked the Select... button, then chose my app pool. The matching criteria it generated was C:\Windows\system32\inetsrv\w3wp.exe * -ap "MyAppPoolName"

Again, I updated my allocation policy, and started everything up. Again, immediately spiked over the limit.


Has anyone else ever actually been successful at implementing one of these allocation policies? They seem very straightforward to set up, but have been nothing but a pain to actually get to work!

Это было полезно?

Решение

Or update to Windows 2012 with IIS 8 which supports this out of the box. IIS 7+ does support CPU monitoring but only offers to kill the application pool if it goes over the limit.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top