2010-01-20 14 views
39

Asp.net kullanılarak oluşturulan bir siteye eriştiğimde her seferinde (örneğin, uzun bir bekleme süresinden sonra, örneğin bir gecede), sayfayı yüklemek yaklaşık 15 saniye sürüyor (Herhangi bir ilerleme görmeden önce 15 saniye sonra, sayfa hızlı çıkıyor).Asp.net sitesindeki ilk sayfa yüklemesini yavaşlatan

Bu sitedeki diğer sayfalar ya da yenilemeler her zamanki gibi hızlıdır - diğer makinelerde de hızlıdır, sadece ilk olanı 'isabet' alır.

Sayfa izleme asla Bir şey (Tüm döngü bir saniyenin küçük bir parçası olduğu)

Benim soru başka ben arıyor olmalı edilir aracılığıyla? Belki de IIS? Ya da hala benim asp.net uygulaması olabilir mi ve sadece ipuçları için yanlış yere (iz) bakıyorum?

IIS sunucusunda çok fazla denetime sahip olmadığımdan, asp.net aracılığıyla denetleyebileceğim herhangi bir şey, daha önce yönetici olmanızı istemeden daha yararlı olur.

şerefe: D

+1

Bu tür sorunlar ile Ngen.exe yardım kullanıyor mu? http://msdn.microsoft.com/en-us/library/6t9t5wcf(VS.80).aspx –

cevap

39

IIS uygulama havuzu 30 dakika işlem yapılmadığında kapatıldı. Bundan sonra, bir istekte bulunduğunuzda, IIS temel olarak web sitesini yeniden başlatmalı ve bu da tanımladığınız davranışa yol açacaktır. Bunu önlemek için web sitenizin boşta kalma süresini iis'te değiştirebilirsiniz.

+1

Bu cevap ile giderdim. Sistem kaynaklarını kısalttığınız zaman, sadece zaman aşımı değerini artırabilirsiniz. – modernzombie

+0

klausbyskov ve diğer tüm yardımlar sayesinde - takdir.Tam olarak nerede bakacağımı biliyorum :) –

5

Muhtemelen bir ısınma script kullanarak, uygulama havuzunun geri dönüşüm planlayabilirsiniz. Önce kendi uygulama havuzunu verin ve yardımcı olup olmadığını görün.

+1

@Taboloo - Uygulama havuzunda bir ısınma komut dosyası kullanın. Uygulama büyükse ve/veya çok fazla bellek/CPU alanı kaplıyorsa, havuz ayarlarınızı bu ek yükü işlemek üzere yapılandırdığınızdan emin olun. –

2

Geçmişte aynı sorunla karşılaştım. Asla sorunun altından kalkmayı başaramadım, ancak IIS uygulama havuzlarının suçlu olduğunu düşündüm.

5

IIS, siteniz Application.OnStart uygulamanız yedeklendiğinde, bir rölantiyi kapattığını belirten yanıtların uyulması (global.asa'nızda). Çok fazla iş yapıyorsanız, bu, uygulamanızı yavaşlatabilir. Tüm önbelleklerinizdeki diğer şeyler boş olacak, tüm DB bağlantınız kesilecek.

Bu davranış IIS'de yapılandırılabilir, IIS ayarlarına erişiminiz yoksa, bunun etrafından habersiz bir şekilde sitenizi bir komut dosyasından veya bir meta yenilemeye sahip özel bir sayfadan her 10 dakikada bir vurmaktır.

Diğer seçeneğiniz, günün ilk sayfasındaki isabetin birkaç saniye daha uzun süreceğini kabul etmektir.

İlgili konular