Hi Jefferson,
We did some performance test today.
Our test result shows that the scalability of poll is very bad when concurrent level is high, and LiteSpeed PHP has worse performance than FCGI PHP, when epoll is used, LiteSpeed PHP always win.
The poll() implementation in 2.6 Kernel is worse than that in 2.4, we think.
Our result:
FCGI PHP
Code:
ab -n 10000 -c 298 http://192.168.10.45:8088/phpinfo.php
Concurrency Level: 298
Time taken for tests: 21.250 seconds
Complete requests: 10000
Failed requests: 0
Broken pipe errors: 0
Total transferred: 255775919 bytes
HTML transferred: 254333788 bytes
Requests per second: 470.59 [#/sec] (mean)
Time per request: 633.25 [ms] (mean)
Time per request: 2.12 [ms] (mean, across all concurrent requests)
Transfer rate: 12036.51 [Kbytes/sec] received
LiteSpeed PHP
Code:
ab -n 10000 -c 298 http://192.168.10.45:8088/phpinfo.phtml
Concurrency Level: 298
Time taken for tests: 19.020 seconds
Complete requests: 10000
Failed requests: 0
Broken pipe errors: 0
Total transferred: 240157735 bytes
HTML transferred: 238716105 bytes
Requests per second: 525.76 [#/sec] (mean)
Time per request: 566.80 [ms] (mean)
Time per request: 1.90 [ms] (mean, across all concurrent requests)
Transfer rate: 12626.59 [Kbytes/sec] received
Our LiteSpeed PHP configuration:
Code:
Name lsphp
Address uds://tmp/lshttpd/lsphp.sock
Max Connections 20
Environment PHP_LSAPI_CHILDREN=20
PHP_LSAPI_MAX_REQUESTS=500
Initial Request Timeout (secs) 60
Retry Timeout (secs) 0
Response Bufferring No
Auto Start Yes
Command $VH_ROOT/fcgi-bin/lsphp
Back Log 100
Instances 1
And we found that PHP 4.4.0 is about 50% faster than PHP 5.0.4 for both FCGI PHP and LiteSpeed PHP.
Best Regards,
George Wang