Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Not
Aşağıdaki yönergelerden bazıları yalnızca Windows veya Linux Uygulama Hizmetleri'ne uygulanabilir. Örneğin, Linux App Services varsayılan olarak 64 bit modunda çalışır.
Özet
Bu makalede, Azure Uygulaması Hizmeti'nin Web Apps özelliğine yönelik uygulama performansı sorunları hakkında sık sorulan soruların (SSS) yanıtları bulunur.
Çeşitli App Service planlarının kotaları ve sınırları hakkında nereden daha fazla bilgi edinebilirim?
Kotalar ve sınırlar hakkında bilgi için bkz . App Service sınırları.
Tüm Web Uygulamaları durdurulduğunda bile CPU/Bellek kullanımını görüntüleyen App Service Planım
Azure Uygulaması Hizmeti, güvenlik güncelleştirmeleri, SCM konsolunun kullanılabilirliği, uygulama izleme, kimlik doğrulaması ve Web Uygulamanızın diğer önemli özellikleri gibi çeşitli platform işlemlerini ve özelliklerini işleyen sürekli sistem işlemleri gerektirir.
Sistem işlemleri, çalışan Web Uygulaması olmasa veya App Service Planı web uygulaması içermiyor olsa bile App Service Planlarında çalışır.
Platform işlemleri en az miktarda kaynak (CPU, Bellek ve Disk alanı gibi) tüketir ve aynı durum App Service Planının kapasite planlaması, izleme ve otomatik ölçeklendirme tetikleyici yapılandırması sırasında hesaba katılmalıdır.
Uygulama performansım yavaş
Yavaş uygulama performansına birden çok faktör katkıda bulunabilirsiniz. Ayrıntılı sorun giderme adımları için bkz . Yavaş web uygulaması performansı sorunlarını giderme.
Tip
- Uygulamanızı sıcak tutmak ve soğuk başlatmaları önlemek için Yapılandırma> altında AlwaysOn ayarını etkinleştirin. Bu, özellikle Temel ve daha yüksek planlarda boşta kalma süresi sonrası gecikmeyi azaltmaya yardımcı olur.
- Uygulama durumunu izlemek ve yanıt vermeyen örnekleri otomatik olarak değiştirmek için sistem durumu denetim yolunu yapılandırın. Bu, kullanılabilirlik ve performansın korunmasına yardımcı olur. Daha fazla bilgi için bkz. Sağlık kontrolü kullanarak App Service örneklerini izleme.
Yüksek CPU tüketimi sorunlarını nasıl giderebilirim?
Bazı yüksek CPU tüketimi senaryolarında uygulamanız gerçekten daha fazla bilgi işlem kaynağı gerektirebilir. Bu durumda, uygulamanın ihtiyaç duyduğu tüm kaynakları alması için daha yüksek bir hizmet katmanına ölçeklendirmeyi göz önünde bulundurun. Diğer durumlarda, yüksek CPU tüketimi hatalı bir döngüden veya bir kodlama uygulamasından kaynaklanabilir. Artan CPU tüketimini tetikleyen şeyler hakkında içgörü elde etme, iki bölümden oluşan bir işlemdir. İlk olarak bir işlem dökümü oluşturun ve ardından işlem dökümünü analiz edin. Daha fazla bilgi için bkz . Web Apps için yüksek CPU tüketimi için döküm dosyasını yakalama ve analiz etme.
Yüksek bellek tüketimi sorunlarını nasıl giderebilirim?
Bazı yüksek bellek tüketimi senaryolarında uygulamanız gerçekten daha fazla bilgi işlem kaynağı gerektirebilir. Bu durumda, uygulamanın ihtiyaç duyduğu tüm kaynakları alması için daha yüksek bir hizmet katmanına ölçeklendirmeyi göz önünde bulundurun. Diğer durumlarda koddaki bir hata bellek sızıntısına neden olabilir. Kodlama uygulaması bellek tüketimini de artırabilir. Yüksek bellek tüketimini tetikleyen şeyler hakkında içgörü elde etme, iki bölümden oluşan bir işlemdir. İlk olarak bir işlem dökümü oluşturun ve ardından işlem dökümünü analiz edin. Azure Site Uzantısı Galerisi'nden Kilitlenme Tanılayıcısı bu iki adımı da verimli bir şekilde gerçekleştirebilir. Daha fazla bilgi için bkz . Web Apps için aralıklı yüksek bellek için döküm dosyasını yakalama ve analiz etme.
PowerShell kullanarak App Service web uygulamalarını otomatikleştirmek Nasıl yaparım??
App Service web uygulamalarını yönetmek ve bakımını yapmak için PowerShell cmdlet'lerini kullanabilirsiniz. PowerShell kullanarak Azure Uygulaması Hizmeti'nde barındırılan web uygulamalarını otomatikleştirme blog gönderimizde, yaygın görevleri otomatikleştirmek için Azure Resource Manager tabanlı PowerShell cmdlet'lerinin nasıl kullanılacağını açıklıyoruz.
Not
Geçerli otomasyon betikleri için en son Az.Websites modülünü kullanın. Eski AzureRM modül kullanım dışıdır.
Web uygulamamın sorunlarını gidermek için bilgi toplamam gerekiyor
Web uygulamasının olay günlüklerini görüntülemek için
-
Kudu web sitenizde (
https://*yourwebsitename*.scm.azurewebsites.net) oturum açın. - Menüden Hata Ayıklama Konsolu
- LogFiles klasörünü seçin.
- Olay günlüklerini görüntülemek için eventlog.xml yanındaki kalem simgesini seçin.
- Günlükleri indirmek için PowerShell cmdlet'ini
Save-AzureWebSiteLog -Name webappnameçalıştırın.
Web uygulamasının kullanıcı modunda bellek dökümünü yakalamak için
-
Kudu web sitenizde (
https://*yourwebsitename*.scm.azurewebsites.net) oturum açın. - İşlem Gezgini menüsünü seçin.
- w3wp.exe işlemine veya Web İşi işleminize sağ tıklayın.
- Bellek Dökümü Tam Dökümünü
Web uygulaması için işlem düzeyi bilgilerini görüntüleme
Web uygulamanız için işlem düzeyi bilgilerini görüntülemek için iki seçeneğiniz vardır:
- Azure portalında:
- Web uygulaması için İşlem Gezgini'ni açın.
- Ayrıntıları görmek için w3wp.exe işlemini seçin.
- Kudu konsolunda:
-
Kudu web sitenizde (
https://*yourwebsitename*.scm.azurewebsites.net) oturum açın. - İşlem Gezgini menüsünü seçin.
- w3wp.exe işlemi için Özellikler'i seçin.
-
Kudu web sitenizde (
App Service'in Yerel Önbellek özelliğini kullanırken günlük dosyalarımı web uygulamamın klasör yapısında bulamıyorum
App Service'in Yerel Önbellek özelliğini kullanırsanız, App Service örneğinin LogFiles ve Veri klasörlerinin klasör yapısı etkilenir. Yerel Önbellek kullanıldığında, depolama LogFiles ve Veri klasörlerinde alt klasörler oluşturulur. Alt klasörler"benzersiz tanımlayıcı" + zaman damgası adlandırma desenini kullanır. Her alt klasör, web uygulamasının çalıştığı veya çalıştırıldığı bir VM örneğine karşılık gelir.
Yerel Önbellek kullanıp kullanmadığınızı belirlemek için App Service Uygulaması ayarları sekmenizi denetleyin. Yerel Önbellek kullanılıyorsa, uygulama ayarı WEBSITE_LOCAL_CACHE_OPTION olarak Alwaysayarlanır.
Başarısız istek izlemeyi açmak için
Başarısız istek izlemeyi açmak için şu adımları izleyin:
Azure portalında web uygulamanıza gidin.
Tüm Ayarlar
Başarısız İstek İzleme için Açık'ı seçin.
Kaydet'i seçin.
Web uygulaması dikey penceresinde Araçlar'ı seçin.
Visual Studio Online'ı seçin.
Ayar Açık değilse Açık'ı seçin.
Git'i seçin.
Web.config'i seçin.
system.webServer'da aşağıdaki yapılandırmayı ekleyin (belirli bir URL'yi yakalamak için):
<system.webServer> <tracing> <traceFailedRequests> <remove path="*api*" /> <add path="*api*"> <traceAreas> <add provider="ASP" verbosity="Verbose" /> <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Verbose" /> <add provider="ISAPI Extension" verbosity="Verbose" /> <add provider="WWW Server" areas="Authentication,Security,Filter,StaticFile,CGI,Compression, Cache,RequestNotifications,Module,FastCGI" verbosity="Verbose" /> </traceAreas> <failureDefinitions statusCodes="200-999" /> </add> </traceFailedRequests> </tracing>Yavaş performans sorunlarını gidermek için bu yapılandırmayı ekleyin (yakalama isteği 30 saniyeden uzun sürüyorsa):
<system.webServer> <tracing> <traceFailedRequests> <remove path="*" /> <add path="*"> <traceAreas> <add provider="ASP" verbosity="Verbose" /> <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Verbose" /> <add provider="ISAPI Extension" verbosity="Verbose" /> <add provider="WWW Server" areas="Authentication,Security,Filter,StaticFile,CGI,Compression, Cache,RequestNotifications,Module,FastCGI" verbosity="Verbose" /> </traceAreas> <failureDefinitions timeTaken="00:00:30" statusCodes="200-999" /> </add> </traceFailedRequests> </tracing>Başarısız istek izlemelerini indirmek için portalda web sitenize gidin.
AraçlarKudu Go'yu>> seçin.
Menüden Hata Ayıklama Konsolu
LogFiles klasörünü seçin ve ardından W3SVC ile başlayan bir adla klasörü seçin.
XML dosyasını görmek için kalem simgesini seçin.
Performans ve dayanıklılık için ek öneriler
App Service uygulamanızın telemetri, bağımlılık izleme ve canlı ölçümler gibi tam yığın gözlemlenebilirliği için Application Insights ve Azure İzleyici'yi kullanın.
Kullanılabilirlik alanlarını destekleyen bölgelerde dağıtım gerçekleştiriyorsanız bölgesel kesintiler sırasında dayanıklılığı artırmak için bölge yedekliliğini etkinleştirmeyi göz önünde bulundurun. Daha fazla bilgi için bkz. Azure Uygulaması Hizmetinde Güvenilirlik.
App Service, platform güvenilirliğini sağlamak için rutin bakımdan geçer. Özellikle App Service Ortamı v3'te güncelleştirme davranışı üzerinde daha fazla denetim için yükseltme tercihini yapılandırın. Daha fazla bilgi için bkz. Azure App Service için rutin (planlı) bakım.