Welcome

Just another WordPress.com weblog

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

 

August 5, 2008 - Posted by dogerg | Benchmarks | , , , , , , , , | 2 Comments

2 Comments »

  1. good stuff

    Comment by nash | August 6, 2008 | Reply

  2. 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

    Comment by mathguy | September 15, 2009 | Reply


Leave a comment