Timer throughput konstan biasanya digunakan untuk mengontrol throughput. Anda dapat memilih mode komputasi berdasarkan tujuan bisnis dari skrip uji stres. Saat menggunakan generator beban terdistribusi untuk uji stres, pastikan nilai parameter dan mode dalam skrip dikonfigurasi dengan benar sesuai model uji stres yang digunakan. Topik ini menjelaskan dua mode komputasi umum serta kinerja adaptasi terdistribusi dari masing-masing mode.
Informasi latar belakang
Mode adaptasi terdistribusi tersedia dalam dua jenis: global dan tunggal. Dalam contoh ini, dua alamat IP digunakan untuk mensimulasikan 100 pengguna virtual dalam grup utas. Target throughput diatur menjadi 100 permintaan per menit, dengan mode komputasi Hanya Utas Ini.
Dalam mode adaptasi terdistribusi global, ambang batas dalam skrip berlaku sebagai total ambang batas untuk semua generator beban dalam kluster. Ambang batas untuk satu generator beban dihitung dengan rumus: Ambang batas dalam skrip / Jumlah alamat IP. Total target throughput adalah: 2 × (Pengguna Virtual/2) × (Target Throughput/2) = 5.000 permintaan per menit.
Dalam mode adaptasi terdistribusi tunggal, ambang batas dalam skrip berlaku untuk setiap generator beban. Pastikan tingkat beban pengguna virtual sesuai dengan nilai yang dikonfigurasi. Total target throughput dihitung dengan rumus: 2 × (Pengguna Virtual/2) × Target Throughput = 10.000 permintaan per menit.
Skenario
Umumnya, Anda dapat mengonfigurasi ambang batas throughput untuk sampler, grup utas, atau seluruh skenario jika beberapa grup utas tersedia. Kami menyarankan agar tidak mengonfigurasi ambang batas throughput pada granularitas yang kompleks. Dalam contoh ini, dua alamat IP digunakan untuk mensimulasikan 100 pengguna virtual dalam grup utas. Target throughput diatur menjadi 100 permintaan per menit.
Skenario 1: Konfigurasikan ambang batas throughput untuk sampler
Masuk ke PTS console, pilih , lalu klik JMeter.
Di bagian Advanced Settings, pilih Single Generator untuk Constant Throughput Timer.
CatatanParameter di bagian Distributed Adaptation pada tab Scenario Configuration hanya ditampilkan jika timer dikonfigurasi dalam skrip yang Anda unggah.

Dalam skrip JMeter, letakkan Constant Throughput Timer di bawah
Sampler.Atur parameter Target Throughput menjadi
100, dalam menit. Pilihthis thread onlyuntuk Calculate Throughput based on, seperti yang ditunjukkan pada gambar berikut.
Skenario 2: Konfigurasikan ambang batas throughput untuk grup utas
Masuk ke PTS console, pilih , lalu klik JMeter.
Di bagian Advanced Settings, pilih Global untuk Constant Throughput Timer.
CatatanParameter di bagian Distributed Adaptation pada tab Scenario Configuration hanya ditampilkan jika timer dikonfigurasi dalam skrip yang Anda unggah.

Dalam skrip JMeter, letakkan Constant Throughput Timer di bawah
Thread Group.Atur parameter Target Throughput menjadi
100, dalam menit. Pilihall active threads in current thread groupuntuk Calculate Throughput based on, seperti yang ditunjukkan pada gambar berikut.
Lima mode komputasi
Dalam contoh ini, satu generator beban digunakan untuk mensimulasikan dua grup utas yang masing-masing berisi 100 pengguna virtual dan 200 pengguna virtual. Dua sampler dikonfigurasi untuk setiap grup utas. Dalam skrip, target throughput diatur menjadi 100 permintaan per menit.
Contoh ini hanya untuk referensi. Untuk informasi lebih lanjut, lihat Dokumentasi Apache JMeter.
Mode Komputasi | Deskripsi | Catatan |
this thread only | Target throughput berlaku untuk setiap utas. Total throughput untuk grup utas dihitung dengan rumus: Pengguna virtual × Target throughput. | Tidak ada throughput yang tersedia untuk utas yang idle. Anda dapat menghitung throughput untuk setiap sampler dengan rumus berikut:
|
All active threads | Target throughput yang dikonfigurasi berlaku untuk semua utas aktif di semua grup utas. Setelah sebuah utas berakhir, utas tersebut menunggu selama periode waktu tertentu lalu berjalan lagi. Ini membantu mengontrol throughput. | Jika beberapa grup utas tersedia, perhatikan hal berikut:
|
All active threads in current thread group | Target throughput yang dikonfigurasi berlaku untuk utas aktif dalam grup utas saat ini. Setelah sebuah utas berakhir, utas tersebut menunggu selama periode waktu tertentu lalu berjalan lagi. Ini membantu mengontrol throughput. | Jika hanya satu grup utas yang tersedia, aturan yang sama dengan mode komputasi sebelumnya berlaku. Perhatikan hal berikut:
|
All active threads (shared) | Target throughput yang dikonfigurasi berlaku untuk semua utas aktif di semua grup utas. Setelah semua utas aktif berakhir, semua utas menunggu selama periode waktu tertentu lalu berjalan lagi. Ini membantu mengontrol throughput. | Anda dapat mencapai performa serupa ketika memilih Delay dari daftar drop-down Add Instruction dalam seluruh skenario. Utas dapat berjalan lagi setelah semua utas aktif berakhir. Perhatikan hal berikut:
|
All active threads in current thread group (shared) | Target throughput yang dikonfigurasi berlaku untuk semua utas aktif dalam grup utas saat ini. Setelah semua utas aktif berakhir, semua utas menunggu selama periode waktu tertentu lalu berjalan lagi. Ini membantu mengontrol throughput. | Setelah semua utas aktif dalam grup utas saat ini berakhir, utas tersebut menunggu selama periode waktu tertentu lalu berjalan lagi.
|
Adaptasi terdistribusi untuk mode komputasi lainnya
Mode Komputasi | Skenario | Mode Global | Mode Tunggal |
All active threads | Mode komputasi ini cocok untuk seluruh skenario di mana throughput dikontrol. Model bisnis dari beberapa grup utas serupa. Throughput seluruh skenario tetap. Dengan cara ini, throughput dapat didistribusikan secara merata ke setiap grup utas. | Sebuah generator beban digunakan untuk mensimulasikan 50 pengguna virtual. Throughput generator beban adalah 50 permintaan per menit, yang diperoleh dengan membagi target throughput dengan 2. Throughput global tetap 100 permintaan per menit. Throughput diakumulasikan jika beberapa grup utas tersedia. | Sebuah generator beban digunakan untuk mensimulasikan 50 pengguna virtual. Throughput generator beban adalah 100 permintaan per menit. Throughput global adalah 200 permintaan per menit, yang diperoleh dengan mengalikan target throughput dengan jumlah alamat IP. Throughput diakumulasikan jika beberapa grup utas tersedia. |
All active threads (shared) | Throughput berlaku untuk seluruh skenario tetapi bukan grup utas. Throughput sedikit lebih rendah daripada nilai akumulasi dari beberapa grup utas. | Throughput adalah 100 permintaan per menit untuk Grup Utas 1 dan 200 permintaan per menit untuk Grup Utas 2. Throughput global adalah 150 permintaan per menit, yang merupakan nilai rata-rata dari dua grup utas. | Throughput adalah 100 permintaan per menit untuk Grup Utas 1 dan 200 permintaan per menit untuk Grup Utas 2. Throughput untuk generator beban adalah 150, yang dihitung dengan rumus berikut: (100 + 200)/2. Throughput global adalah 300 permintaan per menit. Dibutuhkan waktu lama bagi beberapa sampler dari generator beban untuk mencapai keseimbangan. |
All active threads in current thread group (shared) | Throughput berlaku untuk semua utas aktif dalam grup utas. Throughput global sedikit lebih rendah daripada nilai akumulasi dari beberapa grup utas. | Jika throughput adalah 100 permintaan per menit untuk Grup Utas 1 dan 200 permintaan per menit untuk Grup Utas 2, throughput global adalah 300 permintaan per menit, yang merupakan nilai akumulasi untuk Grup Utas 1 dan Grup Utas 2. | Jika throughput adalah 100 permintaan per menit untuk Grup Utas 1 dan 200 permintaan per menit untuk Grup Utas 2, throughput untuk generator beban adalah 300 permintaan per menit, dan throughput global adalah 600 permintaan per menit. Dibutuhkan waktu singkat bagi beberapa sampler dari generator beban untuk mencapai keseimbangan. |