尝试PHP 5.4 Alpha 1
作者:墨鱼 发布于:2011-7-10 11:05 Sunday 分类:PHP
2011-07-11 23:00
语法结构性能测试:
for循环,里面有i++一千万次
PHP 5.2.17 - 0.91秒 ~ 0.94秒
PHP 5.3.6 - 0.71秒 ~ 0.72秒
PHP 5.4.0Alpha1 - 0.51秒 ~ 0.52秒
2011-07-11 20:54
内置函数调用测试2:
for循环,里面有i++和is_string($j)一千万次,其中$j为字符串
PHP 5.2.17 - 2.90秒 ~ 2.98秒
PHP 5.3.6 - 2.89秒 ~ 2.94秒
PHP 5.4.0Alpha1 - 1.91秒 ~ 1.94秒
2011-07-10 13:01
类调用测试:
for循环,里面有i++和test_a::b()一千万次,其中test_a::b()为return 0
PHP 5.2.17 - 4.85秒 ~ 4.96秒
PHP 5.3.6 - 3.87秒 ~ 3.88秒
PHP 5.4.0Alpha1 - 1.44秒 ~ 1.44秒
2011-07-10 12:34
变量调用测试3:
for循环,里面有i++和$j['a']一亿次,其中$j=array(),$j['a'] = 0
PHP 5.2.17 - 14.30秒 ~ 14.61秒
PHP 5.3.6 - 12.15秒 ~ 12.77秒
PHP 5.4.0Alpha1 - 9.22秒 ~ 9.25秒
2011-07-10 12:23
变量调用测试2:
for循环,里面有i++和$j->a一亿次,其中$j=new stdClass,$j->a=0
PHP 5.2.17 - 19.14秒 ~ 19.52秒
PHP 5.3.6 - 15.69秒 ~ 15.85秒
PHP 5.4.0Alpha1 - 11.62秒 ~ 11.87秒
2011-07-10 12:14
变量调用测试1:
for循环,里面有i++和$j一亿次,其中$j=0
PHP 5.2.17 - 8.92秒 ~ 9.08秒
PHP 5.3.6 - 6.90秒 ~ 6.95秒
PHP 5.4.0Alpha1 - 5.02秒 ~ 5.13秒
2011-07-10 12:09
变量定义测试3:
for循环,里面有i++和$j=new stdClass一千万次
PHP 5.2.17 - 6.11秒 ~ 6.28秒
PHP 5.3.6 - 6.57秒 ~ 6.69秒
PHP 5.4.0Alpha1 - 3.00秒 ~ 3.07秒
2011-07-10 12:01
变量定义测试2:
for循环,里面有i++和$j=array(1,2,3,4,5,6,7)一千万次
PHP 5.2.17 - 9.31秒 ~ 9.38秒
PHP 5.3.6 - 9.04秒 ~ 9.11秒
PHP 5.4.0Alpha1 - 7.92秒 ~ 8.04秒
2011-07-10 11:56
变量定义测试1:
for循环,里面有i++和$j=0一亿次
PHP 5.2.17 - 12.43秒 ~ 12.51秒
PHP 5.3.6 - 9.00秒 ~ 9.10秒
PHP 5.4.0Alpha1 - 6.32秒 ~ 6.47秒
2011-07-10 11:45
内置函数调用测试1:
for循环,里面有i++和isset($i)一亿次,其中$i存在
PHP 5.2.17 - 15.00秒 ~ 15.16秒
PHP 5.3.6 - 12.04秒 ~ 12.11秒
PHP 5.4.0Alpha1 - 7.11秒 ~ 7.16秒
2011-07-10 11:34
自定义函数调用测试:
for循环,里面有i++和test_func()一亿次,test_func()里仅有return 0
PHP 5.2.17 - 33.37秒 ~ 33.67秒
PHP 5.3.6 - 20.80秒 ~ 21.30秒
PHP 5.4.0Alpha1 - 14.30秒 ~ 14.58秒
2011-07-10 11:31
i++测试用例:
for循环,里面有i++和j++一亿次。
PHP 5.2.17 - 15.90秒 ~ 16.00秒
PHP 5.3.6 - 13.73秒 ~ 13.80秒
PHP 5.4.0Alpha1 - 10.38秒 ~ 10.47秒
2011-07-10 11:27
1、i++
2、自定义/内置函数调用测试
3、变量定义/调用测试
4、类调用测试
一、时间
二、内存
2011-07-10 11:25
准备测试用例。
2011-07-10 11:23
PHP 5.2.17安装完成。
PHP 5.2.17 (cli) (built: Jul 10 2011 11:36:26)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies
2011-07-10 11:17
开始安装PHP 5.2.17,作对比用
./configure --prefix=/usr/local/services/5.2.17 && make && make install
2011-07-10 11:15
PHP 5.3.6安装完成,比较顺利
PHP 5.3.6 (cli) (built: Jul 10 2011 11:29:07)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
2011-07-10 11:09
开始安装PHP 5.3.6,作对比用
./configure --prefix=/usr/local/services/php-5.3.6 && make && make install
2011-07-10 11:08
安装完成
PHP 5.4.0alpha1 (cli) (built: Jul 10 2011 11:18:51)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2011 Zend Technologies
2011-07-10 11:06
环境:
autoconf (GNU Autoconf) 2.59
Linux linux-q9gc 2.6.16.21_2_ve026test016-1-default #1 Wed Jul 5 21:47:38 MSD 2006 i686 i686 i386 GNU/Linux
gcc version 4.1.0 (SUSE Linux)
2011-07-10 11:05
尝试编译安装,./configure --prefix=/usr/local/services/php-5.4.0 && make && make install
途中见到很多warning,可以安装完成。
PWS再次提升
作者:墨鱼 发布于:2011-4-27 23:12 Wednesday 分类:PHP
几种SERVER模式测试比较~~
作者:墨鱼 发布于:2010-11-20 11:36 Saturday 分类:linux
测试工具:AB
红字为运营参考数值
==================================
epoll-pair
多进程非阻塞监听,并转发到多进程处理
* 对现有架构改变大,进程和Socket管理复杂,处理与分发分开
* 监听进程socket转发开销大,可以通过增加CPU绑定及使用多核CPU提升性能
80% 30100 RPS 4 * 25(sched_setaffinity)
65% 23800 RPS 4 * 25
55% 22200 RPS 2 * 50
40% 14500 RPS 1 * 100
epoll-accept
多进程非阻塞监听并处理
* 对现有架构改变小,进程管理容易,处理与分发混合
* 事件冒泡导致事件误报,且随着进程增多代价增大
55% 19100 RPS 150
55% 23100 RPS 100
60% 26800 RPS 50
60% 27700 RPS 50(sched_setaffinity)
55% 26900 RPS 30
40% 22100 RPS 10
accept
多进程阻塞监听并处理
* 现有架构,进程管理容易,处理与分发混合
45% 28400 RPS 100
50% 28600 RPS 100(sched_setaffinity)


