Canlı performans sorunlarına yanıt verme önerileri

Bu Azure Well-Architected Framework Performans Verimliliği denetim listesi önerisi için geçerlidir:

PE:11 Canlı performans sorunlarına yanıt verin. Net iletişim ve sorumluluklar ekleyerek performans sorunlarının nasıl giderilmesi planlayın. Sorunlu bir durum oluştuğunda, önleyici önlemleri belirlemek ve bunları iş yükünüzle birleştirmek için öğrendiklerinizi kullanın. Benzer durumlar oluştuğunda normal işlemlere daha hızlı dönmek için yöntemler uygulayın.

Bu kılavuzda canlı performans sorunlarına yanıt vermek için en iyi yöntemler açıklanmaktadır. Canlı performans sorunları, bir iş yükünün en iyi şekilde çalışmasını engelleyebilecek gerçek zamanlı zorluklara ve performans sorunlarına işaret eder. Bu sorunların hemen giderilmesi yalnızca performans sorunlarının anında algılanmasını ve düzeltilmesini kolaylaştırmakla kalmaz, aynı zamanda iş yükünün performans karşılaştırmalarını tutarlı bir şekilde karşılamasını sağlar. Bunların ele alınamaması yavaşlamalar, kilitlenmeler ve sistemin yanıt vermemesine ve kullanıcı deneyiminin düşmesine neden olabilir. Ayrıca kullanıcıların görevlerini verimli bir şekilde tamamlamasını engelleyebilir ve buna karşılık kuruluşun itibarını lekeleyebilirler.

Tanımlar

Süre Tanım
Veri bağıntısı Temel nedenleri saptamak için iş yükünüzün çeşitli bölümlerindeki günlükleri, ölçümleri ve olayları hizalama.
Kök neden analizi Bir sorundan sorumlu olan temel faktörleri tanımlama işlemi.
Kendi kendini onarma İnsan müdahalesi olmadan sorunları otomatik olarak onarma olanağı.
Kendi kendini önleme Olası sorunları ve hataları önlemek için iş yükü içindeki uygulamalar.

Temel tasarım stratejileri

Canlı performans sorunuyla karşılaştığınızda, sorunu yanıtlamak için doğru verilerle ve bir planla hazırlıklı olmanız gerekir. Bu plan net iletişim hatlarını ve sorumlulukları içermelidir. Birincil amaç, normal operasyonlara hızlı bir şekilde geri dönmeyi kolaylaştıran ve olayla ilgili içgörüler sağlayan çözümler uygulamaktır. Önleyici önlemleri iş akışınızla tümleştirmek önemli bir stratejidir. Amaç, aynı sorunun yeniden oluşmasını önlemek veya engellenemezse performans üzerindeki etkilerini hafifletmektir.

Sorunlara hazırlanma

Canlı site performansı sorunlarına ideal yanıt kesin ve hızlıdır. Performans düzeltmesindeki duyarlık ve hız için hazırlık yapılması gerekir. Canlı performans sorunlarına etkili bir şekilde yanıt vermek için önemli performans ölçümlerini izlemek, sorunların kök nedenini belirlemek ve uygun çözümleri veya iyileştirmeleri uygulamak çok önemlidir. Bu adımları uygulamak için iş yükü günlüklerini analiz etmeniz, performans testi yapmanız, kodu veya yapılandırmaları iyileştirmeniz ve kaynakları ölçeklendirmeniz gerekebilir. Aşağıdaki örneklerde birkaç kritik hazırlık alanı özetlenmiştir:

  • Doğru mimari diyagramlarına sahip olmanız gerekir. Mimari diyagramlarınız tüm bileşenleri içermeli ve nasıl etkileşime geçtiğini göstermelidir. Görsel gösterim performans sorunlarını ve performans düşüşlerine veya kullanılamazlığa yol açabilecek tek hata noktalarını belirlemeye yardımcı olabilir. İdeal olarak, bu sorunları sorun oluşturmadan önce yakalar ve kaldırırsınız, ancak güncel bir diyagrama sahip olmak, yoğun stres anlarındaki sorunları saptamanıza yardımcı olabilir.

  • Veri erişimini denetleyin. İzleme süreçlerindeki veriler ve günlükler, performans sorunlarına gerçek zamanlı olarak yanıt vermek ve kök neden analizi gerçekleştirmek için kritik öneme sahiptir. Ancak verilerin bütünlüğünü ve gizliliğini korumak önemlidir. Canlı site performansı sorunlarına yanıt vermek için genellikle normalde erişilebilir olmayabilecek temel verilere erişim gerekir. Personelin sorunlar oluştuğunda ihtiyaç duydukları verilere erişebildiğinden emin olmanız gerekir. Ancak yalnızca zaman kısıtlı, en az ayrıcalıklı erişim vermeli ve bu erişimi yetkili personelle sınırlandırmalısınız.

  • Otomatik uyarılar ayarlayın. Uyarılar, sorunları ortaya çıkar çıkmaz belirlemenize ve çözmenize yardımcı olabilir. İş yükü performansı performans taban çizgilerinden saptığında uyarılar bildirim oluşturmalıdır. Zaman içinde, çok fazla veya çok az bildirim oluşturmaktan kaçınmak için uyarı yapılandırmalarını ayarlamanız gerekir. Kullandığınız izleme çözümlerinin uyarı oluşturmak için yeterli veri toplaması gerekir. Bu uyarılar performans hedefleri ve belirlenmiş temellerle uyumlu olmalıdır. Hedeflerinize uygun sorunlarda uyarı oluşturmaktan kaçınmalısınız. Uyarılara örnek olarak CPU kullanımındaki düşüşler, bellek, yanıt süreleri ve veritabanı performansı verilebilir.

Önceliklendirme planı oluşturma

Önceliklendirme planı oluşturmak, canlı site performansı sorunlarını belirlemek, ilerletmek, analiz etmek, önceliklendirmek ve iletmek için yapılandırılmış bir yaklaşım geliştirmeyi içerir. Önceliklendirme planı, canlı performans sorunlarına yanıt vermeye yönelik bir stratejidir. Net roller ve yordamlarla performans kesintilerinin hızlı ve etkili bir şekilde ele alınmasını sağlar. Performans sorunlarının çoğu olağanüstü durum kurtarma protokollerine uygun değildir, ancak önceliklendirme planlaması gerektirecek kadar iş yükü işlevselliğini etkileyebilir. İyi belgelenmiş bir önceliklendirme planı, tüm ekip üyelerinin hizalanmasını sağlar ve hızlı bir şekilde davranarak kullanıcılar ve iş yükleri üzerindeki etkiyi en aza indirir. Önceliklendirme planı aşağıdaki bileşenleri içermelidir:

  • Tanımlama ve izleme: Performans sorunlarını gerçek zamanlı olarak tanımlamak ve izlemek için bir sistem uygulayın. Karar verebilen veya sorunları daha üst düzeylere yükseltebilen kişilerin iletişim bilgilerinin bir listesine sahip olmanız gerekir. Plan ayrıca rolleri ve sorumlulukları da tanımlamalıdır. Hangi hesapların korumalı bilgilere ve ne kadar süreyle erişeceklerini belgelemesi gerekir.

  • İlerletme süreci: Performans sorunlarının uygun ekiplere veya kişilere zamanında yükseltilmesini sağlamak için net bir yükseltme işlemi tanımlayın. İşlem tanımı, sorunları yükseltmeye yönelik iletişim bilgilerini ve yönergeleri içermelidir.

  • Kök neden analizi: Her performans sorununun temel nedenini belirlemek için kök neden analizi gerçekleştirmek için bir süreç geliştirin. Bu işlem günlükleri ve performans ölçümlerini analiz etmeyi ve her sorunun kaynağını saptamak için tanılama testleri yürütmeyi içermelidir.

  • Öncelik belirleme: Performans sorunlarının önem derecesini belirlemek ve iş yükü ve kullanıcılar üzerindeki etkilerine göre önceliklerini belirlemek için bir öncelik belirleme çerçevesi oluşturun.

  • İletişim: Paydaşların performans sorunlarının durumu ve çözümlerinin ilerlemesi hakkında bilgi sahibi olmasını sağlamak için bir iletişim planı oluşturun. Düzenli güncelleştirmeleri, durum raporlarını göz önünde bulundurun ve iletişim kanallarını temizleyin.

  • Belgeler: Tüm adımları, süreçleri ve en iyi yöntemleri de dahil olmak üzere önceliklendirme planını belgeleyin. Bu belgelere, performans sorunlarına yanıt vermeye katılan ekip üyeleri tarafından kolayca erişilebilir olmalıdır.

Sorunları tanımlamak ve çözmek için yöntemler geliştirme

Canlı performans sorunlarını çözmek için canlı iş yükünde performans düşüşlerine veya verimsizliklerine neden olabilecek faktörlerin belirlenmesi ve ele alınması gerekir. İzleme sırasında topladığınız veriler, performansla ilgili olayları araştırıp çözdüğünüzde çok değerlidir. Bu veriler performans ölçümlerinin geçmiş kaydını sağlar. İzleme verileriniz varsa kök nedenleri analiz edebilir ve katkıda bulunan faktörleri belirleyebilirsiniz. Her performans sorununu anlamak ve düzeltmek için tüm ilgili izleme verilerini kullanmanız gerekir.

Kök neden analizini kullanma

Kök neden analizi, hipotez testi gerektirir. İzleme verilerini gözden geçirdikten sonra performans sorununun olası nedenlerini listelemeli ve bunları test etmelisiniz. Canlı performans sorunu üzerinde kök neden analizi gerçekleştirmek için şu adımları izleyebilirsiniz:

  1. Bilgi toplayın. Performans sorunu hakkında mümkün olduğunca fazla bilgi toplayın. Örnek olarak hata iletileri, günlükler, performans ölçümleri ve diğer ilgili veriler verilebilir.

  2. Sorunu tanımlayın. Sorunun belirtilerini ve sorunun iş yükü veya kullanıcılar üzerindeki etkisini belirleyerek sorunu net bir şekilde tanımlayın.

  3. Olası nedenleri araştırın. Performans sorununun oluştuğu iş yükünün belirli bileşenini veya alanını belirleyerek analizin kapsamını daraltın. Toplanan bilgilere göre performans sorununun olası nedenlerini belirleyin. Bu işlem kod, yapılandırma ayarları, altyapı veya dış bağımlılıkların analiz edilmesini içerebilir.

  4. Verileri ilişkilendirme. Performans sorununa katkıda bulunabilecek desenleri, anomalileri veya bağıntıları belirlemek için toplanan verileri ayrıntılı bir şekilde inceleyin. Veri bağıntısı, performans sorunlarını ve nedenlerini tanımlamada çok önemlidir. Günlükleri gözden geçirmeyi, performans ölçümlerini analiz etmeyi ve testleri yürütmeyi içerebilir.

  5. Hipotezleri test edin. Tanımladığınız olası nedenlere göre hipotezleri formüle edin. Hipotezlerinizi doğrulamak veya çürütmek için testler gerçekleştirin. Hatayı çoğaltıp çoğaltamayacağınızı görmek için bir test ortamı kullanmalısınız.

  6. Çözümleri uygulama. Kök nedeni belirledikten sonra performans sorununu çözmek için çözümler geliştirin ve uygulayın.

  7. İzleme ve doğrulama. Çözümleri uyguladıktan sonra, performans sorununun çözümlendiğinden emin olmak için iş yükünü sürekli izleyin. Performans ölçümlerini ve kullanıcı geri bildirimlerini izleyerek çözümlerin verimliliğini doğrulayın.

Dengeleme: Olası nedenleri belirleme, hipotezleri test etme ve analizi belgeleme gibi kök neden analizi adımları zaman alabilir. Performans sorunlarını ilişkilendirmek için veri toplamanız ve depolamanız da gerekir. Gerekli süre ve altyapı, operasyon ekiplerine önemli işler ve iş yüküne maliyet katabilir.

Risk: Uygun güvenlik korumaları olmadan kök neden analizi gerçekleştirirseniz, günlüklere ve verilere erişim sağladığınızda hassas bilgileri kullanıma sunma riski vardır.

Satıcı desteğiyle etkileşim kurma

Sürekli performans sorunlarıyla ilgilenirken satıcı desteği önemli bir adım olabilir. Satıcılar, ürünleriyle ilgili sorunları düzeltmeye yardımcı olacak uzmanlık, araçlar, kaynaklar ve deneyime sahiptir. Tedarikçinizle olan destek sözleşmeniz, bir satıcının sağladığı destek düzeyini belirler.

Genellikle en iyisi satıcılarla paralel çalışmaktır. Bazı ekip üyelerinin satıcı desteğiyle işbirliği yapması, bazılarının ise performans sorunlarını önceliklendirmeye ve düzeltmeye devam etmesi için bir plan oluşturmanız gerekir. Satıcı destek ekipleri, benzer olaylara verilen yanıtları önlemeye ve otomatikleştirmeye yardımcı olma konusunda da önerilerde bulunabilir.

Personelinizin iletişim bilgilerine sahip olmanız gerekir. Satıcıların sorun çözmede etkili bir şekilde etkileşime geçmek için verilere erişmesi de gerekebilir. İzleme verilerine erişmek için dış veya konuk hesaplarının kimliğini doğrulamak ve yetkilendirmek için bir planınız olmalıdır.

Bulgulardan öğrenme

Canlı site performansı sorununu düzeltdikten sonra neler olduğunu gözden geçirmeniz gerekir. Amaç, yalnızca sorunları tanımlamaktan değil performans sorunlarından ders almaktır. Öğrenmenin en iyi yolu belgeleri kullanmaktır. Her sorunu belgeleyin ve nasıl düzeltileceğini açıklayın. Bir satıcı yardımcı olduysa, belgelerinizi geliştirmek için satıcıyla birlikte çalışın, ekibinizi eğitin ve iş yükünüzü buna göre değiştirin.

Belgelerde, her sorunun yeniden oluşmasını nasıl önleyecekleri belirtilmelidir. Yinelenen sorunlardan kaçınmanın bir yolu, sık karşılaşılan sorunlara yanıt vermek için otomasyon uygulamaktır. Otomasyon, bir iş yüküne kendi kendini iyileştirici ve kendi kendini önleme özellikleri eklemelidir. Otomasyonla birlikte, performans sorunu göstergelerine erken yanıt vermenizi sağlayan geliştirilmiş uyarılar oluşturabilirsiniz.

Azure kolaylaştırma

Sorunları belirlemek ve çözmek için yöntemler geliştirme: Azure, canlı performans sorunlarına yanıt vermenize yardımcı olacak çeşitli araçlar sağlar:

  • Azure İzleyici, uygulamalarınızın ve altyapınızın performansı ve durumu hakkında içgörüler sağlayan kapsamlı bir izleme çözümüdür. İzleyici, performans sorunlarını izlemenize ve tanılamanıza yardımcı olmak için ölçümler, günlükler, uyarılar ve panolar gibi özellikler sunar.

  • Application Insights, geliştiricilerin ve DevOps uzmanlarının canlı uygulamaları izlemelerine yardımcı olan bir uygulama performans yönetimi (APM) hizmetidir. Performans anomalilerini otomatik olarak algılar, uygulama düzeyinde günlükleri ve olayları toplar ve sorunları tanılamak için analiz araçları sağlar.

  • Log Analytics; uygulamalar, sanal makineler ve Azure kaynakları gibi çeşitli kaynaklardan günlük verilerini toplayan ve analiz eden bir hizmettir. Log Analytics'i kullandığınızda, uygulamalarınızın performansı ve davranışı hakkında içgörüler elde etmek için günlük verilerini sorgulayabilir ve analiz edebilirsiniz.

Performans Verimliliği denetim listesi

Önerilerin tamamına bakın.