Thursday, April 14, 2011

Mengukur Performa Web Server dengan Apache Benchmark


Mengukur Performa Web Server dengan Apache Benchmark,BANYAK tool yang bisa digunakan untuk mengukur performance dari web server, salah satunya dengan menggunakan web stress tool untuk windows. Namun bisa juga menggunakan APache Benchmark (AB) dari Apache HTTP Server salah satu web server yang banyak digunakan di internet.

Apache Benchmark ini adalah tool untuk mengukur performance apache, dengan ab kita dapat melihat kapabilitas apache untuk melayani request dari client. Namun pertanyaan adalah kita sering menemukan tentang apache benchmark ini adalah bagaimana cara menginstall dan dimana men-download apache benchmark ini.

AB ini telah terinstall secara otomatis ketika menginstall Apache HTTP Server, jika apache sudah terinstall maka tool benchmarking ini juga sudah otomatis ada. Lokasi tool ab ini biasanya di-direktori. Tool apache benchmark ini bisa digunakan tidak hanya untuk Apache, tapi untuk web server lain juga seperti Lighthttpd, Nginx atau Miscrosoft IIS.

Cara menggunakan AB adalah sebagai berikut :

# ab -c 1000 -n 1000 'http://202.xxx.xxx.xxx/mongotest/comment/get_data/20/10'

- Parameter c adalah jumlah request concurrent (berbarengan) yang dibuat, dengan contoh diatas berarti jumlah request yang dibuat adalah 1000 request dalam satu waktu.

- Parameter n adalah jumlah koneksi yang dibuat ke server tujuan, dengan contoh diatas berarti koneksi yang dibuat adalah 1000 koneksi. Ab ini mengkonsumsi resource server, mulai dari memori (RAM), bandwidth dan processor. Masukkan jumlah koneksi dan conccurent request yang sesuai, agar web server tidak sampai kehabisan resource dan kemudian hang.


- Parameter terakhir adalah URL, halaman yang akan diproses oleh web server di-benchmark.

Contoh hasil benchmark sebagai berikut :
[root@monggo-lho-mas ~]# /usr/local/apache2/bin/ab -c 1000 -n 1000 'http://202.xxx.xxx.xxx/mongotest/comment/get_data/20/10'
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 202.xxx.xxx.xxx (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Completed 1000 requests

Finished 1000 requests

Server Software: Apache/2.2.11
Server Hostname: 202.xxx.xxx.xxx

Server Port: 80

Document Path: /mongotest/comment/get_data/20/10
Document Length: 8407 bytes

Concurrency Level: 1000
Time taken for tests: 53.292 seconds
Complete requests: 1000
Failed requests: 0
Write errors: 0
Total transferred: 8621000 bytes
HTML transferred: 8407000 bytes
Requests per second: 18.76 [#/sec] (mean)
Time per request: 53291.611 [ms] (mean)
Time per request: 53.292 [ms] (mean, across all concurrent requests)
Transfer rate: 157.98 [Kbytes/sec] received Connection Times (ms)
min mean[+/-sd] median max
Connect: 1 101 20.4 103 132
Processing: 87 15912 17447.4 7328 53159
Waiting: 87 15909 17447.3 7326 53159

Total: 88 16014 17458.6 7441 5329

Percentage of the requests served within a certain time (ms)
50% 7441
66% 14105
75% 26339
80% 26871
90% 51923
95% 52661
98% 52947
99% 53134

100% 53290 (longest request)

Perhatikan poin Time per request, artinya server ini mampu melayani 18.76 request per detik untuk URL yang di-benchmark. Apache benchmark ini tool yang cukup bagus, hasilnya cukup informatif. Apache benchmark ini dapat digunakan untuk melengkapi hasil benchmark yang digunakan dengan tools lain

0 comments:

Post a Comment

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites