Halo sobat, pernahkah kamu merasa penasaran dengan seberapa cepat website kamu merespon permintaan pengunjung? Salah satu alat yang dapat digunakan untuk menguji performa website adalah ApacheBench (ab). Di artikel ini, saya akan memandu kamu menggunakan perintah
ab
dan menjelaskan detail output-nya, sehingga kamu bisa mengetahui performa website kamu secara menyeluruh.
Cara Menguji Website dengan ApacheBench ApacheBench adalah alat benchmarking command-line yang ringan dan mudah digunakan untuk mengukur performa web server. Misalnya, untuk menguji website
https://www.rahmatriyanto.com/
dengan 100 permintaan dan 1 permintaan simultan, sobat dapat menjalankan perintah berikut:
ab -c 1 -n 100 https://www.rahmatriyanto.com/
Di sini, opsi
-c 1
berarti tingkat konkruensi (concurrency level) adalah 1, artinya hanya ada satu permintaan yang diproses pada satu waktu. Opsi
-n 100
berarti total 100 permintaan akan dilakukan.
Contoh Output ApacheBench [rahmatriyanto@rahmatriyanto-centos6 ~]$ ab -c 1 -n 100 https://www.rahmatriyanto.com/ This is ApacheBench, Version 2.3 <$Revision: 655654 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, zeustech.net/ Licensed to The Apache Software Foundation, apache.org/ Benchmarking localhost (be patient).....done Server Software: Nginx Server Hostname: localhost Server Port: 80 Document Path: / Document Length: 31698 bytes Concurrency Level: 1 Time taken for tests: 26.170 seconds Complete requests: 100 Failed requests: 0 Write errors: 0 Total transferred: 3190000 bytes HTML transferred: 3169800 bytes Requests per second: 3.82 [#/sec] (mean) Time per request: 261.701 [ms] (mean) Time per request: 261.701 [ms] (mean, across all concurrent requests) Transfer rate: 119.04 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.0 0 0 Processing: 248 262 11.8 260 324 Waiting: 201 214 11.7 211 276 Total: 248 262 11.8 260 324 Percentage of the requests served within a certain time (ms) 50% 260 66% 263 75% 265 80% 265 90% 269 95% 276 98% 310 99% 324 100% 324 (longest request) [rahmatriyanto@rahmatriyanto-centos6 ~]$
Penjelasan Output: –
Server Software: Menampilkan software server yang digunakan, dalam hal ini
Nginx. –
Document Length: Menunjukkan ukuran dokumen (31698 bytes) yang diunduh setiap permintaan. –
Concurrency Level: Tingkat konkruensi adalah 1, artinya permintaan dilakukan satu per satu. –
Time taken for tests: Total waktu yang dibutuhkan untuk menyelesaikan 100 permintaan, yaitu 26.170 detik. –
Requests per second: Rata-rata permintaan yang dilayani per detik (3.82 permintaan per detik). –
Time per request: Rata-rata waktu yang dibutuhkan untuk memproses satu permintaan (261.701 ms). –
Transfer rate: Kecepatan transfer data (119.04 Kbytes/sec) yang diterima. –
Connection Times: Tabel ini menunjukkan waktu koneksi, pemrosesan, dan total waktu untuk setiap permintaan, serta distribusinya (median, mean, dan maksimum). –
Percentage of requests served within a certain time: Persentase permintaan yang diselesaikan dalam rentang waktu tertentu, memberikan gambaran tentang konsistensi performa.
Kesimpulan Dengan menggunakan ApacheBench, sobat dapat mengukur performa website dengan cepat dan mendapatkan gambaran yang jelas mengenai waktu respons, kecepatan transfer, dan kestabilan server. Meskipun pada contoh di atas, tingkat permintaan yang dilakukan hanya 100 dengan konkruensi 1, alat ini sangat berguna untuk pengujian beban dan analisis performa web server. Semoga panduan ini bermanfaat dan membantu sobat memahami cara kerja ApacheBench. Selamat mencoba dan terus optimalkan performa website kamu!