IIS Uygulama Havuzu Hiçbir istek olmamasına rağmen yüksek CPU kullanımı


10

Kısa bir süre önce bir dizi Windows Server 2008 R2 / IIS 7.5 sunucusunu Windows Server 2012 / IIS 8 çalıştıran yeni sunuculara taşıdım.

IIS'den bazı garip davranışlar yaşıyorum. 2 özdeş sunucumuz var, her sunucu kendi web havuzunda 2 web sitesi çalıştırıyor. Web sitelerinin her birinin kodu aynıdır. (Kelimenin tam anlamıyla ... aynı dll ve her şey, sadece biraz farklı yapılandırma).

Uygulama havuzları 24 saatte bir geri dönüşüm için ayarlanmıştır, ancak bu 24 saatlik dönemde, w3wp çalışan işleminin CPU kullanımı% 12,5'lik artışlarla artar (sunucu 8 işlemciye sahiptir, bu yüzden bir tesadüf).

CPU kullanımı arttığında, uygulama geri dönüştürülene kadar geri gitmeyecektir. Bildiğim kadarıyla, uygulama hiçbir şey yapmıyor ve şu anda HİÇBİR istek işleme. Sunucuya gelen tüm trafiği engelleyebilirim ve CPU kullanımı sadece orada kalacak. Web sitesini yeniden BAŞLATABİLİRİM ve CPU kullanımı aynı kalır. CPU kullanımını sıfırlamanın tek yolu, üzerinde çalıştığı uygulama havuzunu geri dönüştürmek veya yeniden başlatmaktır.

Bu sorunun kodumla ilgisi olmadığından biraz eminim, ancak kötü bir IIS yapılandırması veya IIS 8'de donanım yapılandırması ya da bir şeyle kötü çalışan bir değişiklik var mı?

Bunun önemli olup olmadığından emin değiller, ancak bunlar Rackspace Performance Cloud sunucularıdır.

İşte bu sunucularda zaman içinde CPU yükünü gösteren bir ekran görüntüsü (yeşil oklar, uygulama havuzunun geri dönüştürüldüğü zamanları gösterir.) Her platonun% 12,5'in ayrılmaz bir katı olduğunu görebilirsiniz:

resim açıklamasını buraya girin

Kimse bu davranışı gözlemledi mi? IIS 6 ile aynı sorun gibi görünen biriyle 2009'dan bu soruyu buldum:

Trafik olmadan yüksek işlemci kullanan IIS w3wp

Herhangi bir yardım çok takdir edilmektedir

Yanıtlar:


1

2012'de Sharepoint 2013 ve IIS 8 ile aynı sorunu yaşadık ... Hiç sıkıntı çekmedik, bunun yerine 2008 R2'de SP2013'e geçtik ve her şey yolundaydı.


2
adam. Ben sadece göç içine koymak tüm işten sonra, bu umduğum cevap değil ...: /
Leland Richardson

1

Sen kullanarak deneyebilirsiniz ayıklama tanı aracı için izini soruna neden olan şey. Genellikle çökmeleri ve bellek sızıntılarını gidermek içindir, ancak soruna hangi bileşenin neden olduğunu bulmanıza yardımcı olabilir.


Ne zaman hata ayıklama Tanılama aracı programlı olarak kullanılır high CPU or RAM more 90%?
Kiquenet

@Kiquenet Sürecin bir bellek dökümü alıp başka bir makinede analiz etmeyi deneyebilirsiniz. Benzer bir sorunla karşılaşıyorum ve ~% 100 CPU kullanımında bir sunucuda <1 dakika içinde bir döküm yakalayabildim
Piyush Saravagi

evet, daha sonra programlı ~% 100 CPU kullanımında bir sunucu üzerinde <1 dakika içinde bir dökümü yakalamak ?
Kiquenet

1

Bu gerçekten sonsuz bir döngüde sıkışmış bazı kodlara benziyor.

Bir istek gelir, IIS hizmet vermeye başlar, bir şey (muhtemelen bir hata) bu davranışı tetikler, bir işçi iş parçacığı sonsuz bir döngüye girer ve bir CPU'yu% 100'e sabitler ve sonra uygulama havuzu geri dönüştürülene kadar bu şekilde kalır.

Hiçbir yeni istek gelmese bile, CPU kullanımda kalır, çünkü sıkışmış iş parçacığı gerçekte sonlandırılmaz.

Bazen yeni bir istek bu davranışı yeniden tetikler ve sonra iki sıkışmış CPU (veya üç veya dört ...) alırsınız .

Uygulama havuzunun geri dönüşümü elbette tüm çalışan iş parçacıklarını sonlandırır, böylece sorun tekrar ortaya çıkana kadar çözülür.


0

W3wp işlemine bir CPU profili ekleyebilir ve orada neler olduğuna bir göz atabilirsiniz. CPU döngülerini neyin tükettiğini görebilmelisiniz.


yüksek CPU veya RAM% 90 daha zaman w3wp sürecine bir CPU profiler nasıl programlanabilir ?
Kiquenet

0

Bana sonsuz bir döngü gibi görünüyor. IIS'nin olağanüstü bir istek olmadığını söylese de bunu birkaç kez gördüm. Bunun nasıl olabileceğinden emin değilim, ama tam olarak gördüğünüz şey bu. Zor kısmı, IIS'nin istekleri tamamlanana kadar günlüğe kaydetmemesidir, bu nedenle hangi isteğin bu davranışı tetiklediğini bulmak zordur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.