.net uygulamalarının ilk açılışta yavaş açılması

developerkafasi (61) 7 yıl önce sordu

Böyle bir sorunla karşı karşıyayız. Bir kaç araştırma yaptım; ve şöyle bir sebep gördüm: Besides the fact that the app pool gets shutdown in case of user inactivity, the app pool will also recycle by default every 1740 minutes (29 hours).

Bu sorunla karşılaşıp çözüme kavuşan var mı? Aşağıda vereceğim link'te, blogger bu sorunu bir şekilde çözmüş ama daha detaylı bilgi almak isterim tecrübeli arkadaşlardan.

https://dotnettimes.wordpress.com/2014/03/24/fixing-slow-initial-load-for-iis-web-site/

Toplam 2 cevap


alattin (16999) 7 yıl önce cevapladı

Aslında bu bir sorun değil.  Asp.net uygulamalarında bir warmup söz konusudur. Uygulamanın kullandığı kütüphaneler gelen ilk istek ile birlikte sunucu belleğine yüklenir.  Daha sonra gelen tüm istekler disk yerine bellekten karşılanır ki bu performans demektir.

Diğer yavaşlık sebebi Application'ın sonlenmasıdır. IIS sunucu asp.net uygulamasına (application) bir istek yoksa bu application'ı sonlandırır. Bu özellikle birden fazla application'a sahip IIS sunucular için kaynakların boşaltılması anlamına gelir.

Bu yoğun çalışan, üzerinde kullanıcı olan sistemleri etkilemez. Yani sizin uygulamanızda web sitenizde kullanıcı varsa o uygulama sürekli aktif kalır, application sonlandırılmaz. Eğer application'a istek yollayan kullanıcı yoksa, basitçe bir anlatımla sitede hiç kimse yoksa, application belirli bir zaman sonra sonlandırılır.

Böyle bir durumu istemiyorsanız IIS sunucu üzerinden  idle timeout'u kapatabilirsiniz.

Ama sizin projede sürekli kullanıcı olacağı için bu bir sorun değil diye düşünüyorum.

notify (538) 7 yıl önce cevapladı

Merhaba,

.Net uyugulamalarında issis kullanılır. Bunu Arama motorları çerezleri(cookie) olarak düşünebilirsiniz. Yani siz ilk defa webform başlatırsanız bunu bilgisayar hafızasına kaydeder ve birdahaki açılışda kaydettiği yerden devam eder. İlk açılışta tüm bilgileri toplamaya çalıştığından yavaş açılır.