Using Apache Benchmark (ab) on sites with authentication
Apache HTTP server benchmarking tool (
ab) is a nice tool to test performance on sites delivered by HTTP. If the site you're about to test is placed behind a login, follow these steps to successfully use
ab on it.
- Open the site to test in the browser of your choice. Do not login yet.
- Use developer tools to show all cookies used by the site. (Chrome: Ctrl+Shift+i, open the 'Resources' tab and click on the site below 'Cookies' on the left. Firefox: Right-click on the site, open 'Web Developer -> Cookies -> View cookie information)
- In order to see which cookies are really necessary, delete all cookies, reload the page, log into the site and reload the cookie information site. For Rails powered sites, you should see a cookie named '_your_site_session' and – depending on your authentication solution – something like 'remember_token'.
- Prepare the cookie string for
abby appending the pairs of cookies name and value like this: cookie_name_1=cookie_value_1;cookie_name_2=cookie_value_2;cookie_name_3=cookie_value_3 …
- Open a terminal and run your benchmark:
ab -n 100 -c 10 -C $cookie_string http://your_site/admin/site-to-load.
man abto find out about