ab测试(Apache bench)yaf
yaf 一直宣称性能爆炸,是一般框架的几十倍,一直不太相信,看了官网文章中的ab测试,本地是xampp环境,Apache自带ab,正好可以测试一下,感觉差距还是蛮大的,我的数据太差了。
这是yaf跟原生php进行的比较,作者也说了,yaf相较于原生框架有一个载入controller的步骤,所以可能会有10%左右的性能消耗,但这并不是跟任意框架(ci,yii,laravel之类)的比较。
指令:
切换到d:/xampp/apache/bin目录下(也是ab可执行文件所在目录)
原生php
./ab -n1000 -c100 http://127.0.0.1/yaf_test/NativePHP/orig.php
yaf基础架构
./ab -n1000 -c100 http://127.0.0.1/yaf_test/yaf/index.php
其中,-n
后接的是请求次数,-c
后接的是请求并发级别。
我的xampp环境在并发100,200还可以执行,再往上xampp就会直接挂掉,然后提示你关闭xampp-control程序。所以最好从小一点的并发开始,并且时刻观察内存使用情况。
在文档中提到一个vmstat
的查看内存使用情况的工具,搜索了一下这个指令,在输出中有个id项,代表内存空闲时间百分比。在执行ab压力测试时,id值越大,说明内存消耗越低,性能越高(这是我的想法)。