|
Benchmarking OPCode Caches |
|
Page 3 of 4
Test Method
AB (Apache Bench) was used to generate the load to each server. AB was configured for a concurancy (simultaneous requests) level of 25, and for 10,000 pages. Results were taken as the average requests per second for the test. Each test scenario was executed between three and ten times, depending on the consistancy of the data. For example, runs that differed by less than one percent were executed three times. The median value was used as the actual number. Between test scenarios, both the webserver (Apache), and MySQL was restarted to negate any cache effects.
Test Versions
The base program used for these tests is Joomla 1.5.1. This is a good choice for OPCode Caches, because it has both a sizable codebase (a lot of code to compile), and a large number of accessed files. A program such as Joomla 1.5 will show the largest benifit from a OPCode Cache.
For OPCode Caches, I used APC 3.0.16, XCache 1.2.0, and EAccelerator 0.9.5.2. To be fair, each was configured with the same amount of storage (1 GB shared memory). Since EAccelerator does not store user variables by default (Both APC and XCache do), I compiled EAccelerator to enable userland variables. This provides a level playing field.
|