Mengonfigurasi Azure Load Testing untuk beban skala tinggi

Dalam artikel ini, Anda mempelajari cara mengonfigurasi uji beban untuk skala tinggi dengan Azure Load Testing. Azure Load Testing mengabstraksi kompleksitas penyediaan infrastruktur untuk mensimulasikan lalu lintas skala tinggi. Untuk memperluas skala pengujian beban, Anda dapat mengonfigurasi jumlah instans mesin uji paralel. Untuk mencapai distribusi beban yang optimal, Anda dapat memantau metrik kesehatan instans pengujian di dasbor Azure Load Testing.

Prasyarat

  • Akun Azure dengan langganan aktif. Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.

  • Sumber daya pengujian beban Azure yang ada. Untuk membuat sumber daya pengujian beban Azure, lihat mulai cepat Membuat dan menjalankan pengujian beban.

Mengonfigurasi parameter beban untuk pengujian beban

Untuk mensimulasikan lalu lintas pengguna untuk aplikasi, Anda dapat mengonfigurasi pola beban dan jumlah pengguna virtual yang ingin Anda simulasikan bebannya. Dengan menjalankan pengujian beban di banyak instans mesin pengujian paralel, Azure Load Testing dapat menskalakan jumlah pengguna virtual yang mensimulasikan lalu lintas ke aplikasi Anda. Pola beban menentukan bagaimana beban didistribusikan selama durasi pengujian beban. Contoh pola beban adalah beban linier, dilangkah, atau lonjakan.

Bergantung pada jenis pengujian beban, berbasis URL, atau berbasis JMeter, Anda memiliki opsi yang berbeda untuk mengonfigurasi beban target dan pola beban. Tabel berikut mencantumkan perbedaan antara dua jenis pengujian.

Jenis tes Jumlah pengguna virtual Pola pemuatan
Berbasis URL (dasar) Tentukan jumlah target pengguna virtual dalam konfigurasi uji beban. Pola beban linier, berdasarkan waktu peningkatan dan jumlah pengguna virtual.
Berbasis URL (tingkat lanjut) Tentukan jumlah mesin uji dan jumlah pengguna virtual per instans dalam konfigurasi pengujian beban. Konfigurasikan pola beban (linier, langkah, lonjakan).
Berbasis JMeter Tentukan jumlah mesin uji dalam konfigurasi uji beban. Tentukan jumlah pengguna virtual dalam skrip pengujian. Konfigurasikan pola beban dalam skrip pengujian.

Mengonfigurasi parameter beban untuk pengujian berbasis URL

Untuk menentukan parameter beban untuk pengujian beban berbasis URL:

  1. Di portal Azure, buka sumber daya Azure Load Testing Anda.

  2. Di navigasi kiri, pilih Pengujian untuk melihat semua pengujian.

  3. Dalam daftar, pilih uji beban Anda, lalu pilih Edit.

    Screenshot that shows the list of load tests and the 'Edit' button.

    Secara bergantian, Anda juga dapat mengedit konfigurasi pengujian dari halaman detail pengujian. Untuk melakukannya, pilih Konfigurasikan, lalu pilih Uji.

  4. Pada halaman Dasar , pastikan untuk memilih Aktifkan pengaturan tingkat lanjut.

  5. Pada halaman Edit pengujian , pilih tab Muat .

    Untuk pengujian berbasis URL, Anda dapat mengonfigurasi jumlah instans mesin pengujian paralel dan pola beban.

  6. Gunakan kontrol penggerak instans Engine untuk memperbarui jumlah instans mesin uji paralel. Secara bergantian, masukkan nilai target dalam kotak input.

    Screenshot of the 'Load' tab on the 'Edit test' pane.

  7. Pilih nilai Muat pola dari daftar.

    Untuk setiap pola, isi pengaturan konfigurasi yang sesuai. Bagan memberikan representasi visual pola beban dan parameter konfigurasinya.

    Screenshot of the 'Load' tab when editing a load test, showing how to configure the load pattern.

Mengonfigurasi parameter beban untuk pengujian berbasis JMeter

Untuk menentukan parameter beban untuk pengujian beban berbasis JMeter:

  1. Di portal Azure, buka sumber daya Azure Load Testing Anda.

  2. Di navigasi kiri, pilih Pengujian untuk melihat semua pengujian.

  3. Dalam daftar, pilih uji beban Anda, lalu pilih Edit.

    Screenshot that shows the list of load tests and the 'Edit' button.

    Secara bergantian, Anda juga dapat mengedit konfigurasi pengujian dari halaman detail pengujian. Untuk melakukannya, pilih Konfigurasikan, lalu pilih Uji.

  4. Pada halaman Edit pengujian, pilih tab Muat. Gunakan kontrol penggerak instans Mesin untuk memperbarui jumlah instans mesin uji, atau masukkan nilai langsung di kotak input.

    Screenshot of the 'Load' tab on the 'Edit test' pane.

  5. Pilih Terapkan untuk mengubah pengujian dan menggunakan konfigurasi baru saat Anda menjalankannya kembali.

Memantau metrik instans mesin

Untuk memastikan bahwa instans mesin pengujian, mereka sendiri bukan penyempitan performa, Anda dapat memantau metrik sumber daya instans mesin pengujian. Penggunaan sumber daya yang tinggi untuk instans pengujian mungkin memengaruhi hasil pengujian beban secara negatif.

Azure Load Testing melaporkan empat metrik sumber daya untuk setiap instans:

  • Persentase CPU.
  • Persentase Memori.
  • Byte jaringan per detik.
  • Jumlah pengguna virtual.

Instans mesin pengujian dianggap sehat jika persentase CPU rata-rata atau persentase memori selama durasi eksekusi pengujian tetap di bawah 75%.

Untuk melihat metrik sumber daya mesin:

  1. Buka sumber daya Pengujian Beban Anda. Di panel kiri, pilih Pengujian untuk menampilkan daftar pengujian beban.

  2. Dalam daftar, pilih uji beban Anda untuk melihat daftar eksekusi pengujian.

  3. Dalam daftar uji coba, pilih uji coba Anda.

  4. Di dasbor uji coba, pilih Kesehatan mesin untuk melihat metrik sumber daya mesin.

    Secara opsional, pilih instans mesin pengujian tertentu dengan menggunakan kontrol filter.

Screenshot that shows the load engine health metrics on the test run dashboard.

Memecahkan masalah instans mesin yang tidak sehat

Jika satu atau beberapa instans menunjukkan penggunaan sumber daya yang tinggi, itu dapat memengaruhi hasil pengujian. Untuk mengatasi masalah ini, coba satu atau beberapa langkah berikut:

  • Kurangi jumlah utas (pengguna virtual) per mesin uji. Untuk mencapai jumlah target pengguna virtual, Anda dapat meningkatkan jumlah instans mesin untuk pengujian beban.

  • Pastikan skrip Anda efektif, tanpa kode redundan.

  • Jika status kesehatan mesin tidak diketahui, jalankan ulang pengujian.

Menentukan permintaan per detik

Jumlah maksimum permintaan per detik (RPS) yang dapat dihasilkan Azure Load Testing untuk pengujian beban Anda tergantung pada latensi aplikasi dan jumlah pengguna virtual (VUs). Latensi aplikasi adalah total waktu dari mengirim permintaan aplikasi oleh mesin uji, hingga menerima respons. Jumlah pengguna virtual adalah jumlah permintaan paralel yang dilakukan Azure Load Testing pada waktu tertentu.

Untuk menghitung jumlah permintaan per detik, terapkan rumus berikut: RPS = (# VUs) * (1/latensi dalam detik).

Misalnya, jika latensi aplikasi adalah 20 milidetik (0,02 detik), dan Anda menghasilkan beban 2.000 VUs, Anda dapat mencapai sekitar 100.000 RPS (2000 * 1/0,02).

Untuk mencapai jumlah target permintaan per detik, konfigurasikan jumlah total pengguna virtual untuk pengujian beban Anda.

Catatan

Apache JMeter hanya melaporkan permintaan yang berhasil ke server dan kembali, baik berhasil atau tidak. Jika Apache JMeter tidak dapat terhubung ke aplikasi Anda, jumlah permintaan aktual per detik akan lebih rendah dari nilai maksimum. Kemungkinan penyebabnya mungkin server terlalu sibuk untuk menangani permintaan, atau sertifikat TLS/SSL hilang. Untuk mendiagnosis masalah koneksi, Anda dapat memeriksa bagan Kesalahan di dasbor pengujian beban dan mengunduh file log pengujian beban.

Instans mesin uji dan pengguna virtual

Dalam skrip Apache JMeter, Anda dapat menentukan jumlah utas paralel. Setiap utas mewakili pengguna virtual yang mengakses titik akhir aplikasi. Kami menyarankan agar Anda menyimpan jumlah utas dalam skrip di bawah maksimal 250.

Di Azure Load Testing, instans mesin uji bertanggung jawab untuk menjalankan skrip Apache JMeter. Semua instans mesin pengujian berjalan secara paralel. Anda dapat mengonfigurasi jumlah instans untuk pengujian beban.

Jumlah total pengguna virtual untuk pengujian beban adalah: VUs = (# utas) * (# instans mesin uji).

Untuk mensimulasikan jumlah target pengguna virtual, Anda dapat mengonfigurasi utas paralel dalam skrip JMeter, dan instans mesin untuk pengujian beban yang sesuai. Pantau metrik mesin pengujian untuk mengoptimalkan jumlah instans.

Misalnya, untuk mensimulasikan 1.000 pengguna virtual, atur jumlah utas dalam skrip Apache JMeter ke 250. Kemudian konfigurasikan uji beban dengan empat instans mesin uji (yaitu, 4 x 250 utas).

Lokasi sumber daya Azure Load Testing menentukan lokasi instans mesin uji. Semua instans mesin pengujian dalam sumber daya Pengujian Beban dihosting di wilayah Azure yang sama.