Untuk mengetes visitor menggunakan K.io, pertama-tama Anda perlu memahami bahwa K.io menyediakan berbagai alat untuk pengujian beban dan pengukuran kinerja. Salah satu alat yang bisa digunakan adalah K6. Berikut adalah langkah-langkah untuk mengatur dan menjalankan tes beban menggunakan K6 di server Anda:

Langkah-langkah Menggunakan K6 untuk Tes Visitor

Instalasi K6:
  • Di Ubuntu/Debian:
sudo apt-get update
sudo apt-get install -y gnupg software-properties-common
wget -q -O - https://dl.k6.io/key.gpg | sudo apt-key add -
echo "deb https://dl.k6.io/deb stable main" | sudo tee /etc/apt/sources.list.d/k6.list
sudo apt-get update
sudo apt-get install -y k6

  • Di MacOS:
brew install k6

Buat Script K6: Buat file JavaScript untuk mendefinisikan tes beban. Misalnya, simpan script di load_test.js:
import http from 'k6/http';
import { check, sleep } from 'k6';

export let options = {
  stages: [
    { duration: '1m', target: 10 }, // Ramp-up to 10 users over 1 minute
    { duration: '3h', target: 10 }, // Stay at 10 users for 3 hours
    { duration: '1m', target: 0 }, // Ramp-down to 0 users
  ],
};

export default function () {
  let res = http.get('https://yourwebsite.com');
  check(res, {
    'status was 200': (r) => r.status == 200,
  });
  sleep(1);
}

Jalankan Tes K6: Jalankan K6 dengan script yang sudah dibuat:
k6 run load_test.js

Analisis Hasil: Setelah tes selesai, K6 akan memberikan laporan terperinci tentang kinerja server Anda selama pengujian. Anda dapat melihat metrik seperti waktu respons, tingkat kesuksesan, dan sebagainya.

Penjelasan Script K6

  • Stages: Mendefinisikan tahapan tes beban. Dalam contoh ini, pengguna akan meningkat ke 10 selama 1 menit, tetap pada 10 pengguna selama 3 jam, lalu menurun kembali ke 0 selama 1 menit.
  • http.get: Mengirimkan permintaan GET ke URL yang ingin diuji.
  • check: Memeriksa apakah respons statusnya 200 (sukses).
  • sleep(1): Memberikan jeda 1 detik antara permintaan untuk mensimulasikan perilaku pengguna nyata.
Dengan langkah-langkah ini, Anda dapat mengatur dan menjalankan tes beban untuk memeriksa kinerja server Anda menggunakan K.io (K6).