谢华亮 php,谢华亮: PHP4和PHP5性能测试和对比
PHP 4到今年年底PHP Group将不再对其进行支持了,所以为了让大家更有信心的转移到PHP 5平台上,我特别做了这个测试,看看我们PHP 4.x 是否真的性能比我们的PHP 5.x要好,测试结果很明显,那就是PHP 5.x 比php 4.x不论是面向对象还是面向过程,都要比PHP 4.x 要快,所以大家完全有必要转移到PHP 5.x 平台上,去体验PHP 5.x 平台的各种功能和性能。
因为PHP 5 包括新的对象模型,更多新特点,更快的处理速度,特别是处理面向对象代码的速度,虽然在php 4中面向对象代码的速度比较一般,但是在PHP5.x中面向对象代码的速度都超过了面向过程的速度,所以不要对面向对象的性能持有怀疑,下面的测试结果将说明这一切。
【测试环境】
CPU: Intel Pentium4 2.66GHz
Memory: 1GB
Disk: 73GB/SCSI
OS: FreeBSD 4.11
Web: Apache 1.3.37
测试工具:ab (也可以选用http_load)
名词RPS: Requests per second (每秒的请求数量)
相关
测试工具:ab (也可以选用http_load)
名词RPS: Requests per second (每秒的请求数量)
【PHP 4.4.2 测试结果】
[ 函数 Function ]
function signin(){
echo "test";
}
signin();
?>
测试结果:ab -n 10000 -c 50 的结果是1047.23/rps
[ 类 Class ]
不实例化类
class User{
function signin(){
echo "test";
}
}
User::signin();
?>
测试结果:ab -n 10000 -c 50 的结果是 1034.98/rps
实例化类
class User{
function signin(){
echo "test";
}
}
$user=new User();
$user->signin();
?>
测试结果:ab -n 10000 -c 50 的结果是 1006.14/rps
类的继承
class AUser{
function signin(){}
}
class User extends Auser{
function signin(){
echo "test";
}
}
$user=new User();
$user->signin();
?>
测试结果:ab -n 10000 -c 50 的结果是 992.95/rps
【PHP 5.2.1测试结果】
[ 函数 Function ]
function signin(){
echo "test";
}
signin();
?>
测试结果:ab -n 10000 -c 50 的结果是 1176.06/rps
[ 类 Class ]
不实例化类
class User{
public function signin(){
echo "test";
}
}
User::signin();
?>
测试结果:ab -n 10000 -c 50 的结果是 1197.17/rps
实例化类
class User{
public function signin(){
echo "test";
}
}
$user=new User();
$user->signin();
?>
测试结果:ab -n 10000 -c 50 的结果是 1187.93/rps
类的继承和抽象
abstract class AUser{
abstract function signin();
}
class User extends Auser{
public function signin(){
echo "test";
}
}
$user=new User();
$user->signin();
?>
测试结果:ab -n 10000 -c 50 的结果是 1128.54/rps
【测试结果和分析】[ 测试结果数据 ]
版本
函数测试
不实例化类
实例化类
类的继承
PHP 4.4.2
1047.23/rps
1034.98/rps
1006.14/rps
992.95/rps
PHP 5.2.1
1176.06/rps
1197.17/rps
1187.93/rps
1128.54/rps
[ 结果分析 ]
1. 总体来说,可以明显刚看到PHP5.2 的性能要比 PHP4.4略高一点,所以不要怀疑PHP5.2的性能会差,明显比 PHP4要快
2. PHP4.4中的类的解析性能明显要比函数的要慢,特别是当使用了继承以后,更是下降的厉害,所以在PHP4.4中更适宜使用面向过程和没有继承的类操作
3. PHP5.2中结果是类的执行速度比函数还要快,可以看出PHP5.2的引擎对面向对象处理花费了很大的功夫,同时他们不论是函数还是类,性能都不错
4. 通过这个测试,我们完全有理由在代码变更不大的情况下,把PHP4升级到PHP5,而且PHP5基本向下兼容PHP4的代码,除了一些特殊的代码。另外上面提到今年年底之后PHP Group将不再继续对PHP4进行维护了,所以早升级,早安心。
谢华亮 php,谢华亮: PHP4和PHP5性能测试和对比相关推荐
- php4和php5的区别,php4和php5区别是什么
php4和php5区别是什么 导语:PHP4和PHP5,已经是两个版本了.下面的是百分网小编为大家搜集的php4和php5区别,供大家参考. PHP5 中的对象已经进行了较系统.较全面的调整,现在的样 ...
- 让你的PHP4和PHP5共存
来源:http://www.sudu.cn/info/html/edu/20071226/35135.html 一,本文涉及软件极其版本: windows 2000 professional/xp ...
- 让php4和php5共存的方法
来源:http://blog.tianya.cn/blogger/post_show.asp?BlogID=327657&PostID=7220921 一山能容二虎―Windws下基于Apac ...
- PHP5比PHP4,php4和php5的配置异同比较
技术文章 配置php4或者php5的过程中,php4,5的配置的步骤大致一样的,但是配置内容有一些差别.在LINUX等环境下编译,一般来说,只要编译的选项正确,配置也就正确了:在windows配置则需 ...
- 让LED灯按照指定的亮灭模式亮灭
题目: 让LED灯按照指定的亮灭模式亮灭,亮灭模式未知,由用户随即指定.每八个变化为一个循环,每个变化状态的时间值可以根据不同的应用场景选择. 思路:参考3 8 译码器的设置 需要两个计数器 源文件: ...
- 北京理工大学计算机学院 王亮,王 亮
基本信息 教育与工作经历 2003.9-2007.7 山东大学 电气工程学院 电气工程及其自动化 学士 2007.9-2010.7 华南理工大学 电力学院 电力电子与电力传动 硕士 ...
- php5 php4,自动实现php4和php5环境的切换......
因为php4早就end了,所以是有必要切换到php5的了,所以有时调试需要整合一下了 做了一个脚本,让他们批处理一下就能自动切换了,方便的说 环境: window XP SP2 +apache2.2. ...
- php5向下兼容php4吗,PHP5与PHP4的区别小议
PHP5与PHP4的区别小议: 一.未100%向下兼容 在php5中尽管大部分PHP4的代码应该不用修改就能运行,还是应该留意以下不向下兼容的改变: 有了一些新关键字. strrpos() 和 str ...
- 华为鸿蒙亮利剑,华为亮利剑,超级主镜头+鸿蒙OS,所有期许或将如愿以偿
在竞争越来越残酷的手机市场,手机厂商们为了迎合消费者的需求开始在产品的设计和创新上发力,这样做的目的就是为了打造特色化和差异化的产品来赢得消费者的支持.在众多国产手机厂商中,华为手机是一家在产品的设计 ...
最新文章
- 大学生如何合理使用计算机,大学生计算机合理使用引导分析
- python前面+r
- [调试技巧] 如何利用WinDbg找出程序崩溃的位置
- “东数西算”工程正式启动,全面解读来了!
- Bitmap与IplImage之间的转换
- PHP替换回车换行的三种方法
- (转)利用MS AJAX 扩展服务器端控件
- 给所有开发人员的 11 条忠告(第 4 条亮了)
- Mono for Android布局控件属性小结
- OCR——PaddleOCR之文字识别的学习笔记
- 深度学习自学(三十八):基于交互式双流解码器图像显著性检测
- 沟通CTBS助×××系统巨头解决南北互通问题
- Windows11微软官方网址下载地址(2021年11月更新)
- 我们距离实现通用人工智能还有多远?
- 移动开发之我见 ——移动WEB
- 论文阅读《Contextual-based Image Inpainting: Infer, Match, and Translate》
- php 获取 ip 并根据 ip 获取地理位置
- AutoMapper 9.0的使用
- 51单片机-定时器中断
- 如何用python画一束花_如何在AI里绘制一束春天的花朵