Saat perlu menguji cara sistem menangani lonjakan tiba-tiba dalam traffic konkuren—seperti penjualan kilat atau event terjadwal—Anda dapat menggunakan titik temu untuk menyinkronkan pengguna virtual. Permintaan terkumpul di titik temu dan ditahan hingga kondisi rilis terpenuhi, lalu semua permintaan yang tertunda dikirim sekaligus.
Cara kerja
Pengguna virtual yang mencapai titik temu akan berhenti dan menunggu. Setelah kondisi rilis terpenuhi—baik berupa durasi waktu maupun ambang batas jumlah pengguna—semua permintaan yang terkumpul dirilis secara simultan.
| Behavior | Description |
|---|---|
| Single-fire | Titik temu hanya memicu satu kali per uji stres. Setelah permintaan yang terkumpul dirilis, iterasi berikutnya melewati titik tersebut tanpa menunggu |
| Release rate | Meskipun semua permintaan tertunda dirilis pada saat yang sama, laju kedatangan aktual di API downstream bergantung pada jumlah pengguna virtual dan catatan per detik (RPS) yang dikonfigurasi untuk instruksi berikutnya |
Prasyarat
Sebelum memulai, pastikan Anda telah:
Mengakses Konsol PTS
Menambahkan API HTTP ke skenario uji stres Anda. Untuk detailnya, lihat HTTP APIs
Pilih jenis rilis
Sebelum menambahkan titik temu, tentukan jenis rilis yang sesuai dengan tujuan pengujian Anda:
| Release type | Best for | How it works | Considerations |
|---|---|---|---|
| By Time | Event berbasis waktu (misalnya, penjualan kilat yang dimulai pada waktu tertentu) | Mengumpulkan permintaan selama durasi tetap, lalu merilis semuanya sekaligus | Semua pengguna yang tiba dalam jendela tunggu termasuk, terlepas dari jumlahnya |
| By Number of Users | Menjamin jumlah pasti permintaan konkuren | Mengumpulkan permintaan hingga jumlah pengguna virtual yang ditentukan sedang menunggu, lalu merilis semuanya sekaligus | Pastikan pengujian Anda memiliki cukup pengguna virtual untuk mencapai ambang batas; jika tidak, titik temu tidak akan dipicu |
Tambahkan titik temu
Masuk ke Konsol PTS. Buka Performance Test > Create Scenario, lalu klik PTS.
Tambahkan API dan konfigurasikan informasi dasar. Untuk detailnya, lihat HTTP APIs.
Pada bagian Business Session, klik daftar drop-down Add Instruction dan pilih Rendezvous Point.
Bentangkan Rendezvous Point dan atur Rendezvous Point Type menjadi salah satu opsi berikut:
By Time
Kumpulkan permintaan selama durasi tetap setelah uji stres dimulai, lalu rilis semuanya sekaligus.
| Parameter | Description |
|---|---|
| Rendezvous Point Type | Pilih By Time |
| Wait Time | Durasi dalam detik. Setelah waktu ini berlalu sejak awal uji stres, semua permintaan yang terkumpul dirilis secara simultan |
Contoh: Atur Wait Time menjadi 300. Semua permintaan pengguna virtual yang mencapai titik temu dalam 300 detik pertama ditahan, lalu dirilis bersamaan pada detik ke-300.
By Number of Users
Kumpulkan permintaan hingga jumlah pengguna virtual tertentu sedang menunggu, lalu rilis semuanya sekaligus.
| Parameter | Description |
|---|---|
| Rendezvous Point Type | Pilih By Number of Users |
| Number of Users | Jumlah target. Saat sejumlah pengguna virtual ini telah terkumpul di titik temu, semua permintaan mereka dirilis secara simultan |
Contoh: Atur jumlah pengguna menjadi 50. Titik temu menahan permintaan hingga 50 pengguna virtual sedang menunggu, lalu merilis ke-50 permintaan tersebut secara bersamaan.
Jika jumlah pengguna virtual dalam pengujian Anda lebih rendah daripada ambang batas yang ditentukan, titik temu tidak akan dipicu dan permintaan yang terkumpul tidak dirilis. Pastikan jumlah total pengguna virtual dalam skenario Anda sama dengan atau lebih besar dari ambang batas tersebut.
FAQ
Apakah titik temu dapat dipicu lebih dari sekali?
Tidak. Titik temu hanya dipicu satu kali per uji stres. Setelah rilis pertama, pengguna virtual dalam iterasi berikutnya melewati titik temu tanpa menunggu.
Apa yang terjadi jika ambang batas "By Number of Users" tidak pernah tercapai?
Jika pengujian Anda tidak memiliki cukup pengguna virtual untuk mencapai ambang batas, titik temu tidak akan dipicu. Untuk menghindarinya, pastikan jumlah total pengguna virtual minimal sama dengan nilai Number of Users.
Apakah titik temu menjamin bahwa semua permintaan tiba di server pada waktu yang persis sama?
Tidak sepenuhnya. Semua permintaan tertunda dirilis secara simultan dari titik temu, tetapi laju kedatangan aktual di API downstream bergantung pada jumlah pengguna virtual dan RPS yang dikonfigurasi untuk instruksi berikutnya.