Testing the Wordpress performance
Methodology
Testing is done on domain some sample domain (filterizavodu.com
), with
default sample Wordpress installation.
-
Finally, I decided to use only http_load as ab’s numbers proved to be erratic with high level of randomness. http_load on the other hand provided remarkably stable numbers.
-
Before each benchmark, URL was bombarded with concurrent requests for 10 seconds to ‘warm it up’ (JIT, caching opcodes, etc.).
-
http_load then ran in a concurrency level of 8 (more than saturates the 2 cores/4 threads). Methodology was to run the concurrent stress for 20 seconds, and divide the total number of successful requests by 20, thereby getting the requests per second.
Expected results
Good results are: 40-50rps (nice), 80-90 (whopping), 110-120 (impressive), >120(woah)
Zeev installed Wordpress 3.9 and benchmarked it with ‘ab’. 5.6 gave me a nice 44.8 requests per second. PHPNG gave me a whopping 83 requests per second, which was pretty impressive. But then I benchmarked HHVM.
And he concluded that on Wordpress, HHVM is WAAAY faster than PHP 5.6.
Sources & Articles
- Benchmarking PHP and HHVM by a very important guy :) Zeev Suraski
Install http_load with HTTPS
Compile http_load with HTTPS support, as it is disabled by default.
cd /usr/local/src
wget http://acme.com/software/http_load/http_load-14aug2014.tar.gz
tar -zxf http_load-*.tar.gz
cd http_load-*
# enable SSL support and we'll need SSL header files
apt-get -y install libssl-dev
sed -i -re "s/^#(SSL.*)/\1/gi" Makefile
make clean && make
chmod +x http_load
mv http_load /usr/local/bin
cd ..
rm -r http_load-*
Testing scenario
The url file is just a list of URLs, one per line. The URLs that get fetched are chosen randomly.
// echo "http://filterizavodu.com/" >urls.txt
echo "http://save-up.ch/" >saveup.txt
http_load -parallel 8 -seconds 20 saveup.txt
Frequent warning message about byte count wrong is due the dynamic content, such as adverts etc, that are served differently each time - so nothing to worry about.
Sources & Articles