本帖最后由 jdgdf566 于 2013-07-02 14:16:48 编辑
测试 APC PHP
测试php编译缓存APC的效果。使用ab测试的命令是:/ab -n 1000 -c 5 http://localhost/abtest.php
开启APC:
Server Software: Apache/2.2.21Server Hostname: localhostServer Port: 80Document Path: /abtest.phpDocument Length: 662 bytesConcurrency Level: 5Time taken for tests: 11.464 secondsComplete requests: 1000Failed requests: 0Write errors: 0Total transferred: 879000 bytesHTML transferred: 662000 bytesRequests per second: 87.23 [#/sec] (mean)Time per request: 57.319 [ms] (mean)Time per request: 11.464 [ms] (mean, across all concurrent requests)Transfer rate: 74.88 [Kbytes/sec] receivedConnection Times (ms) min mean[+/-sd] median maxConnect: 0 0 0.4 0 4Processing: 25 57 8.5 55 130Waiting: 24 56 8.5 55 130Total: 25 57 8.5 55 130Percentage of the requests served within a certain time (ms) 50% 55 66% 57 75% 58 80% 58 90% 62 95% 68 98% 90 99% 95 100% 130 (longest request)
登录后复制
不开启APC:
Server Software: Apache/2.2.21Server Hostname: localhostServer Port: 80Document Path: /abtest.phpDocument Length: 662 bytesConcurrency Level: 5Time taken for tests: 29.521 secondsComplete requests: 1000Failed requests: 0Write errors: 0Total transferred: 879000 bytesHTML transferred: 662000 bytesRequests per second: 33.87 [#/sec] (mean)Time per request: 147.607 [ms] (mean)Time per request: 29.521 [ms] (mean, across all concurrent requests)Transfer rate: 29.08 [Kbytes/sec] receivedConnection Times (ms) min mean[+/-sd] median maxConnect: 0 0 0.4 0 2Processing: 35 147 10.7 146 242Waiting: 35 146 10.7 146 242Total: 36 147 10.7 146 242Percentage of the requests served within a certain time (ms) 50% 146 66% 147 75% 149 80% 151 90% 155 95% 160 98% 173 99% 180 100% 242 (longest request)
登录后复制
再开启APC:
Server Software: Apache/2.2.21Server Hostname: localhostServer Port: 80Document Path: /HUODONGNewTest/abtest.phpDocument Length: 662 bytesConcurrency Level: 5Time taken for tests: 10.361 secondsComplete requests: 1000Failed requests: 0Write errors: 0Total transferred: 879000 bytesHTML transferred: 662000 bytesRequests per second: 96.51 [#/sec] (mean)Time per request: 51.807 [ms] (mean)Time per request: 10.361 [ms] (mean, across all concurrent requests)Transfer rate: 82.85 [Kbytes/sec] receivedConnection Times (ms) min mean[+/-sd] median maxConnect: 0 0 0.5 0 9Processing: 26 51 12.8 49 227Waiting: 26 51 12.8 49 227Total: 26 51 12.8 50 228Percentage of the requests served within a certain time (ms) 50% 50 66% 51 75% 52 80% 53 90% 57 95% 60 98% 63 99% 68 100% 228 (longest request)
登录后复制
再关闭APC:
Server Software: Apache/2.2.21Server Hostname: localhostServer Port: 80Document Path: /HUODONGNewTest/abtest.phpDocument Length: 662 bytesConcurrency Level: 5Time taken for tests: 28.444 secondsComplete requests: 1000Failed requests: 0Write errors: 0Total transferred: 879000 bytesHTML transferred: 662000 bytesRequests per second: 35.16 [#/sec] (mean)Time per request: 142.222 [ms] (mean)Time per request: 28.444 [ms] (mean, across all concurrent requests)Transfer rate: 30.18 [Kbytes/sec] receivedConnection Times (ms) min mean[+/-sd] median maxConnect: 0 0 0.4 0 2Processing: 35 141 8.3 142 174Waiting: 34 141 8.3 141 173Total: 36 141 8.3 142 175Percentage of the requests served within a certain time (ms) 50% 142 66% 144 75% 145 80% 146 90% 151 95% 155 98% 158 99% 162 100% 175 (longest request)
登录后复制
回复讨论(解决方案)
命令改为:/ab -c 5 -n 10 http://localhost/abtest.php
未开启APC:
Benchmarking localhost (be patient).....doneServer Software: Apache/2.2.21Server Hostname: localhostServer Port: 80Document Path: abtest.phpDocument Length: 815 bytesConcurrency Level: 5Time taken for tests: 18.188 secondsComplete requests: 10Failed requests: 0Write errors: 0Total transferred: 10320 bytesHTML transferred: 8150 bytesRequests per second: 0.55 [#/sec] (mean)Time per request: 9093.750 [ms] (mean)Time per request: 1818.750 [ms] (mean, across all concurrent requests)Transfer rate: 0.55 [Kbytes/sec] receivedConnection Times (ms) min mean[+/-sd] median maxConnect: 0 0 0.5 1 1Processing: 9026 9065 48.1 9040 9155Waiting: 9026 9065 48.2 9039 9155Total: 9026 9066 48.1 9041 9156WARNING: The median and mean for the initial connection time are not within a normal deviation These results are probably not that reliable.Percentage of the requests served within a certain time (ms) 50% 9041 66% 9077 75% 9104 80% 9129 90% 9156 95% 9156 98% 9156 99% 9156 100% 9156 (longest request)
登录后复制
开启APC:
登录后复制
用于测试的文件abtest.php含有类的引入和实例化,无数据库连接。
测试结果:
APC开启和关闭,CPU的占用率都是100%,这意味着处理能力相同。而完成的时间如下:
Time taken for tests: 11.464 seconds
Time taken for tests: 29.521 seconds
Time taken for tests: 10.361 seconds
Time taken for tests: 28.444 seconds
很明显,接近3倍。