Azure Load Testing'i yüksek ölçekli yük için yapılandırma

Bu makalede, Azure Yük Testi ile yük testinizi yüksek ölçekli için yapılandırmayı öğreneceksiniz. Azure Load Testing, yüksek ölçekli trafiğin benzetimini sağlamak için altyapı sağlamanın karmaşıklığını özetler. Yük testinin ölçeğini genişletmek için paralel test altyapısı örneklerinin sayısını yapılandırabilirsiniz. En iyi yük dağılımını elde etmek için Azure Load Testing panosunda test örneği sistem durumu ölçümlerini izleyebilirsiniz.

Önkoşullar

Yük testi için yük parametrelerini yapılandırma

Uygulamanızın kullanıcı trafiğinin benzetimini yapmak için yük desenini ve yük simülasyonu yapmak istediğiniz sanal kullanıcı sayısını yapılandırabilirsiniz. Yük testini birçok paralel test altyapısı örneğinde çalıştırarak Azure Load Testing, uygulamanıza yönelik trafiğin simülasyonunu oluşturan sanal kullanıcı sayısının ölçeğini genişletebilir. Yük düzeni, yükün yük testi süresi boyunca nasıl dağıtıldığını belirler. Yük desenlerine örnek olarak doğrusal, basamaklı veya ani yük verilebilir.

Yük testinin türüne, URL tabanlı, JMeter tabanlı veya Çekirge tabanlı türüne bağlı olarak, hedef yükü ve yük desenini yapılandırmak için farklı seçenekleriniz vardır. Aşağıdaki tabloda test türleri arasındaki farklar listelenmiştir.

Test türü Sanal kullanıcı sayısı Yük düzeni
URL tabanlı (temel) Yük testi yapılandırmasında hedef sanal kullanıcı sayısını belirtin. Artış süresine ve sanal kullanıcı sayısına göre doğrusal yük deseni.
URL tabanlı (gelişmiş) Yük testi yapılandırmasında test altyapısı sayısını ve örnek başına sanal kullanıcı sayısını belirtin. Yük desenini yapılandırın (doğrusal, adım, ani artış).
JMeter tabanlı Test betiğinde örnek başına sanal kullanıcı sayısını belirtin. Yük testi konfigürasyonunda test motorlarının sayısını belirtin. Test betiğinde yük desenini yapılandırın.
Çekirge tabanlı Yük testi yapılandırmasındaki, çekirge yapılandırma dosyasındaki veya test betiğindeki toplam kullanıcı sayısını belirtin. Yük testi konfigürasyonunda test motorlarının sayısını belirtin. Test betiğinde yük desenini yapılandırın.

URL tabanlı testler için yük parametrelerini yapılandırma

URL tabanlı yük testinin yük parametrelerini belirtmek için:

  1. Azure portalında Azure Yük Testi kaynağınıza gidin.

  2. Sol gezinti bölmesinde Testler'i seçerek tüm testleri görüntüleyin.

  3. Listede yük testinizi ve ardından Düzenle'yi seçin.

    Yük testlerinin listesini ve 'Düzenle' düğmesini gösteren ekran görüntüsü.

    Alternatif olarak, test yapılandırmasını test ayrıntıları sayfasından da düzenleyebilirsiniz. Bunu yapmak için Yapılandır'ı ve ardından Test'i seçin.

  4. Temel Bilgiler sayfasında Gelişmiş ayarları etkinleştir'i seçtiğinizden emin olun.

  5. Testi düzenle sayfasında Yükle sekmesini seçin.

    URL tabanlı testler için paralel test altyapısı örneklerinin sayısını ve yük desenini yapılandırabilirsiniz.

  6. Paralel test altyapısı örneklerinin sayısını güncelleştirmek için Altyapı örnekleri kaydırıcı denetimini kullanın. Alternatif olarak, giriş kutusuna hedef değeri girin.

    'Testi düzenle' bölmesindeki 'Yükle' sekmesinin ekran görüntüsü.

  7. Listeden Yük deseni değerini seçin.

    Her desen için ilgili yapılandırma ayarlarını doldurun. Grafik, yük deseninin ve yapılandırma parametrelerinin görsel bir gösterimini sağlar.

    Yük testi düzenlenirken yük deseninin nasıl yapılandırılır gösterildiği 'Yükle' sekmesinin ekran görüntüsü.

JMeter tabanlı testler için yük parametrelerini yapılandırma

JMeter tabanlı yük testinin yük parametrelerini belirtmek için:

  1. Azure portalında Azure Yük Testi kaynağınıza gidin.

  2. Sol gezinti bölmesinde Testler'i seçerek tüm testleri görüntüleyin.

  3. Listede yük testinizi ve ardından Düzenle'yi seçin.

    Yük testlerinin listesini ve 'Düzenle' düğmesini gösteren ekran görüntüsü.

    Alternatif olarak, test yapılandırmasını test ayrıntıları sayfasından da düzenleyebilirsiniz. Bunu yapmak için Yapılandır'ı ve ardından Test'i seçin.

  4. Testi düzenle sayfasında Yükle sekmesini seçin. Test altyapısı örneklerinin sayısını güncelleştirmek için Altyapı örnekleri kaydırıcı denetimini kullanın veya değeri doğrudan giriş kutusuna girin.

    JMeter tabanlı testler için 'Testi düzenle' bölmesindeki 'Yükle' sekmesinin ekran görüntüsü.

  5. Testi değiştirmek ve yeniden çalıştırırken yeni yapılandırmayı kullanmak için Uygula'yı seçin.

Locust tabanlı testler için yük parametrelerini yapılandırma

Çekirge (Locust) tabanlı yük testinin yük parametrelerini belirtmek için:

  1. Azure portalında Azure Yük Testi kaynağınıza gidin.

  2. Sol gezinti bölmesinde Testler'i seçerek tüm testleri görüntüleyin.

  3. Listede yük testinizi ve ardından Düzenle'yi seçin.

    Yük testlerinin listesini ve 'Düzenle' düğmesini gösteren ekran görüntüsü.

    Alternatif olarak, test yapılandırmasını test ayrıntıları sayfasından da düzenleyebilirsiniz. Bunu yapmak için Yapılandır'ı ve ardından Test'i seçin.

  4. Testi düzenle sayfasında Yükle sekmesini seçin. İlgili giriş kutularına gerekli genel kullanıcıların ve genel oluşturma oranının değerlerini girin. Bu yükü üretmek için gereken motor örneği sayısı otomatik olarak doldurulur. Test betiğiniz karmaşık ve yoğun kaynak kullanıyorsa, test altyapısı örneklerinin sayısını güncelleştirmek için Altyapı örnekleri kaydırıcı denetimini kullanın veya değeri doğrudan giriş kutusuna girin.

    Çekirge tabanlı testler için 'Testi düzenle' bölmesindeki 'Yükle' sekmesinin ekran görüntüsü.

Alternatif olarak, test betiğinde veya Locust yapılandırma dosyasında kullanıcı sayısını ve oluşturma hızını yapılandırabilir ve gerekli altyapı örneklerinin sayısını sağlayabilirsiniz.

  1. Testi değiştirmek ve yeniden çalıştırırken yeni yapılandırmayı kullanmak için Uygula'yı seçin.

Motor örneği ölçümlerini izleme

Test altyapısı örneklerinin performans sorunu olmadığından emin olmak için test altyapısı örneğinin kaynak ölçümlerini izleyebilirsiniz. Bir test örneği için yüksek kaynak kullanımı, yük testinin sonuçlarını olumsuz etkileyebilir.

Azure Yük Testi her örnek için dört kaynak ölçümü bildirir:

  • CPU yüzdesi.
  • Bellek yüzdesi.
  • Saniye başına ağ bayt sayısı.
  • Sanal kullanıcı sayısı.

Test çalıştırması süresi boyunca ortalama CPU yüzdesi veya bellek yüzdesi %75'in altında kalırsa test altyapısı örneği iyi durumda kabul edilir.

Motor kaynak metriklerini görüntülemek için:

  1. Yük Testi kaynağınıza gidin. Sol bölmede Testler'i seçerek yük testlerinin listesini görüntüleyin.

  2. Test çalıştırmalarının listesini görüntülemek için listeden yük testinizi seçin.

  3. Test çalıştırması listesinden test çalıştırmanızı seçin.

  4. Test çalıştırması panosunda , motor kaynak ölçümlerini görüntülemek için Motor sağlığını seçin.

    İsteğe bağlı olarak, filtre denetimlerini kullanarak belirli bir test altyapısı örneğini seçin.

Test çalışması panosundaki yük altyapısı durumu ölçümlerini gösteren ekran görüntüsü.

Arızalı motor örnekleriyle ilgili sorunları giderme

Bir veya birden çok örnek yüksek kaynak kullanımı gösteriyorsa, test sonuçlarını etkileyebilir. Sorunu çözmek için aşağıdaki adımlardan birini veya daha fazlasını deneyin:

  • Test motoru başına iş parçacığı (sanal kullanıcı) sayısını azaltın. Hedef sanal kullanıcı sayısına ulaşmak için yük testi için altyapı örneklerinin sayısını artırabilirsiniz.

  • Betiğinizin yedekli kod olmadan etkili olduğundan emin olun.

  • Motorun sağlık durumu bilinmiyorsa testi yeniden çalıştırın.

Saniye başına istekleri belirleme

Azure Yük Testi'nin yük testiniz için oluşturabileceği saniye başına istek sayısı (RPS) sayısı, uygulamanın gecikme süresine ve sanal kullanıcı sayısına (VU) bağlıdır. Uygulama gecikme süresi, test altyapısı tarafından bir uygulama isteği göndermeden yanıtı almaya kadar geçen toplam süredir. Sanal kullanıcı sayısı, Azure Load Testing'in belirli bir zamanda gerçekleştirdiği paralel istek sayısıdır.

Saniye başına istek sayısını hesaplamak için şu formülü uygulayın: RPS = (VU sayısı) * (saniye cinsinden 1/gecikme süresi).

Örneğin, uygulama gecikme süresi 20 milisaniye (0,02 saniye) ise ve 2.000 VU yük oluşturuyorsanız, yaklaşık 100.000 RPS (2000 * 1/0,02s) elde edebilirsiniz.

Saniye başına hedef sayıda istek elde etmek için yük testinizin toplam sanal kullanıcı sayısını yapılandırın.

Uyarı

Apache JMeter yalnızca sunucuya ve sunucuya geri gönderilen istekleri (başarılı veya değil) bildirir. Apache JMeter uygulamanıza bağlanamazsa, saniye başına gerçek istek sayısı maksimum değerden düşük olacaktır. Olası nedenler sunucunun isteği işleyemeyecek kadar meşgul olması veya bir TLS/SSL sertifikasının eksik olması olabilir. Bağlantı sorunlarını tanılamak için yük testi panosundaki Hatalar grafiğini denetleyebilir ve yük testi günlük dosyalarını indirebilirsiniz.

JMeter tabanlı testler için test altyapısı örnekleri ve sanal kullanıcıları

Apache JMeter betiğinde paralel iş parçacığı sayısını belirtebilirsiniz. Her iş parçacığı, uygulama uç noktasına erişen bir sanal kullanıcıyı temsil eder. Betikteki iş parçacığı sayısını en fazla 250'nin altında tutmanızı öneririz.

Azure Yük Testi'nde test altyapısı örnekleri Apache JMeter betiğini çalıştırmakla sorumludur. Tüm test motoru örnekleri paralel olarak çalışır. Yük testi için örnek sayısını yapılandırabilirsiniz.

Yük testi için toplam sanal kullanıcı sayısı şu şekildedir: VU ' lar = (# iş parçacıkları) * (# test altyapısı örnekleri).

Hedef sayıda sanal kullanıcının benzetimini yapmak için JMeter betiğindeki paralel iş parçacıklarını ve yük testi için altyapı örneklerini uygun şekilde yapılandırabilirsiniz. Örnek sayısını iyileştirmek için test altyapısı ölçümlerini izleyin.

Örneğin, 1.000 sanal kullanıcının benzetimini yapmak için Apache JMeter betiğindeki iş parçacığı sayısını 250 olarak ayarlayın. Ardından, yük testi yapılandırmasını dört test motoru örneği kullanarak (yani, 4 x 250 iş parçacığı) gerçekleştirin.

Azure Load Testing kaynağının konumu, test altyapısı örneklerinin konumunu belirler. Yük Testi kaynağındaki tüm test altyapısı örnekleri aynı Azure bölgesinde barındırılır.

Locust tabanlı testler için test altyapısı örnekleri ve sanal kullanıcıları

Yük testiniz için gereken toplam kullanıcı sayısını yapılandırın. Bu, eşzamanlı Locust kullanıcılarının en yüksek sayısını temsil eder. Bunu, Azure Yük Testi'nde test oluştururken yük yapılandırmasında yapılandırabilirsiniz. Bunu test betiğinizde veya Locust yapılandırma dosyasında da yapılandırabilirsiniz. Bir test altyapısı örneğinden en fazla 500 kullanıcı çalıştırmanızı öneririz.

Azure Yük Testi'nde test altyapısı örnekleri Locust betiğini çalıştırmakla sorumludur. Tüm test motoru örnekleri paralel olarak çalışır. Yük testi için örnek sayısını yapılandırabilirsiniz.

Yük testi için gereken toplam altyapı sayısı şu şekildedir: altyapı sayısı = (toplam kullanıcı sayısı) / 500.

Yük yapılandırmasında toplam kullanıcıları yapılandırdığınızda, Azure Yük Testi motor sayısını otomatik olarak ayarlar. Gerekirse motor sayısını güncelleştirebilirsiniz. Örnek sayısını iyileştirmek için test altyapısı ölçümlerini izleyin.

Örneğin, 2.000 kullanıcının benzetimini yapmak için Yük yapılandırmasındaki toplam kullanıcı sayısını 2.000 olarak ayarlayın. Azure Yük Testi, yürütücü sayısını otomatik olarak 4 olarak doldurur. Gerekirse motor sayısını güncelleyin. Test betiğinizdeki veya Locust yapılandırma dosyanızdaki kullanıcıları 2.000 olarak yapılandırdıysanız, yük yapılandırmasında altyapı örneklerini 4 olarak ayarlayın.

Azure Load Testing kaynağının konumu, test altyapısı örneklerinin konumunu belirler. Yük Testi kaynağındaki tüm test altyapısı örnekleri aynı Azure bölgesinde barındırılır.