Tolong tunjukkan perintah yang harus saya jalankan untuk mencari tahu.
Tes paling sederhana yang dapat Anda lakukan adalah melakukan 1000 permintaan, 10 sekaligus (yang kira-kira mensimulasikan 10 pengguna bersamaan yang masing-masing mendapatkan 100 halaman - selama pengujian).
ab -n 1000 -c 10 -k -H "Accept-Encoding: gzip, deflate" http://www.example.com/
-n 1000
adalah jumlah permintaan yang harus dibuat.
-c 10
memberi tahu AB untuk melakukan 10 permintaan sekaligus, alih-alih 1 permintaan sekaligus, untuk mensimulasikan lebih baik pengunjung konkuren (vs pengunjung berurutan).
-k
mengirimkan KeepAlive
header, yang meminta server web untuk tidak mematikan koneksi setelah setiap permintaan dilakukan, tetapi tetap menggunakannya kembali.
Saya juga mengirim tajuk tambahan Accept-Encoding: gzip, deflate
karena mod_deflate hampir selalu digunakan untuk mengompresi keluaran teks / html 25% -75% - efeknya tidak boleh diabaikan karena berdampak pada kinerja keseluruhan server web (yaitu, dapat mentransfer 2x data dalam jumlah waktu yang sama, dll).
Hasil:
Benchmarking www.example.com (be patient)
Completed 100 requests
...
Finished 1000 requests
Server Software: Apache/2.4.10
Server Hostname: www.example.com
Server Port: 80
Document Path: /
Document Length: 428 bytes
Concurrency Level: 10
Time taken for tests: 1.420 seconds
Complete requests: 1000
Failed requests: 0
Keep-Alive requests: 995
Total transferred: 723778 bytes
HTML transferred: 428000 bytes
Requests per second: 704.23 [#/sec] (mean)
Time per request: 14.200 [ms] (mean)
Time per request: 1.420 [ms] (mean, across all concurrent requests)
Transfer rate: 497.76 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.1 0 1
Processing: 5 14 7.5 12 77
Waiting: 5 14 7.5 12 77
Total: 5 14 7.5 12 77
Percentage of the requests served within a certain time (ms)
50% 12
66% 14
75% 15
80% 16
90% 24
95% 29
98% 36
99% 41
100% 77 (longest request)
Untuk interpretasi yang paling sederhana, abaikan semuanya TETAPI baris ini:
Requests per second: 704.23 [#/sec] (mean)
Lipat gandakan dengan 60, dan Anda memiliki permintaan Anda per menit.
Untuk mendapatkan hasil dunia nyata, Anda ingin menguji Wordpress alih-alih beberapa file HTML atau index.php statis karena Anda perlu tahu bagaimana semuanya bekerja bersama-sama: termasuk kode PHP yang rumit, dan beberapa permintaan MySQL ...
Sebagai contoh di sini adalah hasil pengujian instalasi baru Wordpress pada sistem yang sama dan lingkungan WAMP (Saya menggunakan WampDeveloper, tetapi ada juga Xampp, WampServer, dan lainnya) ...
Requests per second: 18.68 [#/sec] (mean)
Itu 37x lebih lambat sekarang!
Setelah uji beban, ada sejumlah hal yang dapat Anda lakukan untuk meningkatkan kinerja keseluruhan (Permintaan Per Detik), dan juga membuat server web lebih stabil di bawah beban yang lebih besar (mis., Meningkatkan -n
dan -c
cenderung menabrak Apache), yang Anda bisa baca di sini:
Muat Pengujian Apache dengan AB (Apache Bench)