Top Web Servers Benchmarking with PHP
Benchmarks of Top Web Servers
Below are the results which I have achieved after doing benchmarks on different web servers running on CentOS 5.1 virtual machine with 512MB RAM. I used ab (apache bench), to achieve these results, which requests for a small PHP file (1.6 K) hosted on web server. I used two different techniques for benchmarking i.e. without keep alive, and with keep alive requests. For batter understanding I have displayed the results in form of tables and graphs. Graphs are based on Average Requests Solved per second parameter.
1. Apache 2.2.3:
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
740.34 |
756.60 |
739.19 |
745.38 |
|
200 |
10000 |
777.88 |
778.02 |
772.11 |
776.00 |
|
400 |
10000 |
692.86 |
490.13 |
440.30 |
541.10 |
|
600 |
10000 |
525.15 |
571.64 |
660.31 |
585.70 |
|
800 |
10000 |
476.27 |
472.78 |
484.10 |
477.72 |
|
1000 |
10000 |
340.56 |
158.42 |
186.97 |
228.65 |
Table1.1: Apache performance results without keep alive requests
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
780.58 |
799.61 |
886.59 |
822.26 |
|
200 |
10000 |
763.66 |
815.17 |
865.21 |
814.68 |
|
400 |
10000 |
577.80 |
420.69 |
698.51 |
565.67 |
|
600 |
10000 |
506.27 |
377.25 |
404.71 |
429.41 |
|
800 |
10000 |
227.13 |
199.83 |
278.70 |
235.22 |
|
1000 |
10000 |
- |
- |
- |
- |
Table1.2: Apache performance results with keep alive requests
2. Lighttpd 1.4.19:
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
1113.14 |
1067.33 |
1118.99 |
1099.82 |
|
200 |
10000 |
1018.08 |
931.93 |
946.17 |
965.39 |
|
400 |
10000 |
816.08 |
836.84 |
853.73 |
835.55 |
|
600 |
10000 |
766.33 |
820.03 |
716.18 |
767.51 |
|
800 |
10000 |
858.76 |
884.08 |
880.22 |
874.35 |
|
1000 |
10000 |
889.61 |
874.02 |
904.77 |
889.47 |
Table2.1: Lighttpd performance results without keep alive requests
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
1360.03 |
1364.60 |
1377.87 |
1367.50 |
|
200 |
10000 |
1094.21 |
1046.30 |
1051.73 |
1064.08 |
|
400 |
10000 |
885.78 |
862.18 |
905.64 |
884.53 |
|
600 |
10000 |
916.88 |
878.91 |
855.81 |
883.87 |
|
800 |
10000 |
942.03 |
848.48 |
904.85 |
898.45 |
|
1000 |
10000 |
992.97 |
989.70 |
1065.33 |
1016.00 |
Table2.2: Lighttpd performance results with keep alive requests
3. LiteSpeed 3.3.15:
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
1083.96 |
1104.86 |
1084.68 |
1091.17 |
|
200 |
10000 |
934.25 |
986.68 |
1087.72 |
1002.88 |
|
400 |
10000 |
1173.74 |
1197.01 |
934.30 |
1101.68 |
|
600 |
10000 |
1161.28 |
1086.01 |
1128.66 |
1125.32 |
|
800 |
10000 |
1123.26 |
1081.17 |
1082.83 |
1095.75 |
|
1000 |
10000 |
1097.85 |
977.47 |
953.72 |
1009.68 |
Table3.1: LiteSpeed performance results without keep alive requests
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
1608.41 |
1229.68 |
1026.12 |
1288.07 |
|
200 |
10000 |
1634.11 |
1502.02 |
1208.03 |
1448.05 |
|
400 |
10000 |
1496.50 |
1182.18 |
1434.65 |
1371.11 |
|
600 |
10000 |
1580.57 |
1485.48 |
1215.63 |
1427.23 |
|
800 |
10000 |
1464.75 |
1335.91 |
1358.25 |
1386.30 |
|
1000 |
10000 |
1404.39 |
1390.39 |
1254.40 |
1349.73 |
Table3.2: LiteSpeed performance results with keep alive requests
4. Sun Java Web Server 7.0.u3:
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
828.85 |
774.11 |
793.97 |
798.98 |
|
200 |
10000 |
858.06 |
866.53 |
828.62 |
851.07 |
|
400 |
10000 |
1518.30 |
1274.72 |
1227.18 |
1340.07 |
|
600 |
10000 |
1544.23 |
1537.93 |
1536.02 |
1539.39 |
|
800 |
10000 |
2027.42 |
1573.87 |
1691.52 |
1764.27 |
|
1000 |
10000 |
1931.17 |
1842.84 |
1684.65 |
1819.55 |
Table4.1: Sun Java Web Server performance results without keep alive requests
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
963.69 |
946.52 |
1048.39 |
986.20 |
|
200 |
10000 |
645.22 |
919.25 |
925.51 |
830.00 |
|
400 |
10000 |
- |
- |
- |
- |
|
600 |
10000 |
- |
- |
- |
- |
|
800 |
10000 |
- |
- |
- |
- |
|
1000 |
10000 |
- |
- |
- |
- |
Table4.2: Sun Java Web Server performance results with keep alive requests
5. IBM HTTP Server 6.1:
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
1446.20 |
1471.48 |
1464.06 |
1460.58 |
|
200 |
10000 |
1376.51 |
1269.34 |
1339.27 |
1328.37 |
|
400 |
10000 |
1446.45 |
1401.83 |
1436.45 |
1428.24 |
|
600 |
10000 |
1313.65 |
1292.15 |
1314.46 |
1306.75 |
|
800 |
10000 |
1415.10 |
1346.20 |
1423.45 |
1394.92 |
|
1000 |
10000 |
1282.65 |
1293.72 |
1321.53 |
1299.30 |
Table5.1: IBM HTTP Server performance results without keep alive request
|
Number of Concurrent Requests |
Total Requests |
Result (Requests per second) |
|||
|
Run 1 |
Run 2 |
Run 3 |
Average |
||
|
1 |
10000 |
2320.19 |
2236.10 |
2259.07 |
2271.79 |
|
200 |
10000 |
2108.11 |
2125.30 |
2130.00 |
2121.14 |
|
400 |
10000 |
2143.50 |
2135.95 |
2197.38 |
2158.94 |
|
600 |
10000 |
2223.39 |
2381.46 |
2305.14 |
2303.33 |
|
800 |
10000 |
2226.34 |
2149.15 |
2084.19 |
2153.23 |
|
1000 |
10000 |
2102.03 |
2227.93 |
2204.93 |
2178.30 |
Table5.2: IBM HTTP Server performance results with keep alive requests
2 Comments »
Leave a comment
-
Recent
-
Links
-
Archives
- August 2008 (2)
-
Categories
-
RSS
Entries RSS
Comments RSS
good stuff
I tried to test the benchmark at my local host and I get the following error.
Benchmarking localhost (be patient)…apr_socket_recv: Connection refused (111)
Tested using following command,
ab -n 100 -c 5 http://localhost/index.php