文档章节

php7简单性能测试

燕玉苗
 燕玉苗
发布于 2015/06/16 17:24
字数 546
阅读 4247
收藏 1
点赞 0
评论 1

(一) 一个简单的测试 看看php7跑多快(就不罗列电脑配置了,因为环境是一样的)
1 测试代码:

<?php
/**
 * test.php ; compare php5.6.7 with php7.0.0alphal on time and memory by this simple program
 */

function microtime_float()
{
    list($usec, $sec) = explode(" ", microtime());
    return ((float)$usec + (float)$sec);
}

$time_start = microtime_float();
$memory_start = memory_get_usage();
echo "Time start $time_start\n";
echo "Memory start $memory_start\n";
// Sleep for a while
//usleep(100);

$sum = 0;
for($i=1; $i<=100000000; $i++)
{
    $sum+=$i;
}
$i--;
echo "Sum(1+2+3+...+$i) = $sum\n";

$time_end = microtime_float();
$memory_end = memory_get_usage();
echo "Time end $time_end\n";
echo "Memory end $memory_end\n";

$time = $time_end - $time_start;
$memory = $memory_end - $memory_start;
//echo "Did nothing in $time seconds\n";

echo "Sub time $time seconds\n";
echo "Sub momory $memory byte\n";
?>

2 测试结果:


运行速度:php5.6.7用时3.5s,php7用时2.0s,php7在运行速度上有了很大的提升
内存增量:这方面php7优势更明显,php5.6.7内存增量是640byte,而php7的内存增量只有32byte
内存消耗:php7开始时内存使用量要多于php5.6.7,应该是引擎做了更多的预处理工作

(二)兼容问题
1 当给php7安装扩展的时候发现报错 error: ext/standard/php_smart_str.h: No such file or directory
之前给php5.6.7安装这个扩展的时候是没有问题的,于是我搜索了一下
➜ find / -name php_smart_str.h
/usr/local/php/include/php/ext/standard/php_smart_str.h
/usr/local/src/php-5.4.35/ext/standard/php_smart_str.h
/usr/local/src/php-5.6.7/ext/standard/php_smart_str.h
看结果两个源包中都有这个文件 当前安装的php目录里面也有这个文件 但是php7的源包和安装目录中都没有这个文件
➜ ~ ls /usr/local/src/php-5.6.7/ext/standard | grep php_smart_str
php_smart_str.h
php_smart_str_public.h
➜ ~ ls ~/Downloads/php-7.0.0alpha1/ext/standard | grep php_smart_str
php_smart_string.h
php_smart_string_public.h
看这个名字在php7的源码包中有php_smart_string.h这个文件 用Bcompare对比了俩文件 差很多
且不说这个源文件是什么作用,老版本有而php7源包里面没有,这应当算是个兼容性问题

(三)总结
php7在运行速度上确实有了质的飞跃,这是最重要的也是最令人振奋的,据鸟哥说速度已经和hhvm不差了
php7alphal版本在安装扩展的时候非常鸡肋,如果你用到很多扩展,那么还是等正式版本吧

© 著作权归作者所有

共有 人打赏支持
燕玉苗
粉丝 7
博文 4
码字总数 1776
作品 0
海淀
程序员
加载中

评论(1)

陈洁新
陈洁新
我也遇到这个问题了。
探索PHP7(一)--性能

在2015年12月2号,鸟哥的在开源中国发布的新闻写在 PHP 7 发布之际一些话,小编意识到从8月份发布第一个公测版到现在经过了将近4个月的等待PHP7正式版本终于发布了,所以果断装上了一个玩玩,确实...

喵了_个咪 ⋅ 2015/12/06 ⋅ 2

你的网站主机支持PHP7了吗?

如果要问企业建站采用哪种编程语言最为主流,那毫无疑问的当属PHP。单说流行程度,目前全球超过81.7%的服务器后端都采用了PHP语言,它驱动着全球绝大多数的网站。随着PHP7 的发布,很多主机空...

it1000001001 ⋅ 2017/03/07 ⋅ 0

让你的 PHP 7 更快 (GCC PGO)

编者注:本文是 PHP 大神 —— 鸟哥 @Laruence 的作品,原文地址:http://www.laruence.com/2015/06/19/3063.html 我们一直致力于提升PHP7的性能, 上个月我们注意到GCC的PGO能在Wordpress上能...

oschina ⋅ 2015/06/20 ⋅ 40

Laravel5 ,phpng(php7) vs php5.4 性能测试

本次测试目的是想看看php7能给laravel5带来多大提升,采用php内置server,测试基于welcome路由,增加了Eloquent模型查询语句,测试结果仅供参考。 测试环境: macbook pro i5+ssd+8g内存 硬件...

吾爱 ⋅ 2016/11/09 ⋅ 0

蝉知建站系统PHP7性能测评

2015年底PHP7正式面世了,这是PHP语言发展史的一个重要里程碑,它带来了显著的性能提升和新特性,并对之前版本的一些特性进行了改进。今天我在虚拟机中分别搭建了相同环境LAMP,PHP版本分别是...

it1000001001 ⋅ 2017/03/06 ⋅ 0

日请求亿级的QQ会员AMS平台PHP7升级实践

版权声明:本文由PHP7升级项目组原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/74 来源:腾云阁 https://www.qcloud.com/community QQ会员活动运营平台...

偶素浅小浅 ⋅ 2016/11/01 ⋅ 0

PHP7优化提高性能的几个Tips

PHP7已经发布了, 作为PHP10年来最大的版本升级, 最大的性能升级, PHP7在多放的测试中都表现出很明显的性能提升, 然而, 为了让它能发挥出最大的性能, 我还是有几件事想提醒下. 1. Opcache 记得...

English0523 ⋅ 2015/12/29 ⋅ 0

PHP7正式版测试,性能惊艳!

本周迎来2015年编程语言界的两件大事,Swift 开源, PHP7 发布。这两件大事,都是可以载入相应的编程语言的史册级的事件。 Swift 开源的事,咱先不说了,知乎上也有热烈的讨论,我们今天就来...

OneAPM蓝海讯通 ⋅ 2015/12/07 ⋅ 1

实测php7性能大增

测试php7和java7,8纯计算性能 from http://www.oschina.net/question/96003_2186833 测试网络io吞吐量 php7中c写的内嵌的buitin server 与 简单hello world脚本 和netty HttpHelloWorldSer......

yak ⋅ 2016/07/17 ⋅ 11

PHP7 的性能在 xlsx的解析做的测试 --两个凡是

速度相当 PHP7只快1%左右, 应该是因为主要时间消耗在 libxml上 内存使用减少了接近 40% 非常厉害 PHP7 确实是非常值得升级的版本 PHP5.6 升级的主要意义在于更加严格了语法并一致了语言行为...

宏哥 ⋅ 2016/12/16 ⋅ 8

没有更多内容

加载失败,请刷新页面

加载更多

下一页

个人博客的运营模式能否学习TMALL天猫质量为上?

心情随笔|个人博客的运营模式能否学习TMALL天猫质量为上? 中国的互联网已经发展了很多年了,记得在十年前,个人博客十分流行,大量的人都在写博客,而且质量还不错,很多高质量的文章都是在...

原创小博客 ⋅ 今天 ⋅ 0

JavaScript零基础入门——(十一)JavaScript的DOM操作

JavaScript零基础入门——(十一)JavaScript的DOM操作 大家好,欢迎回到我们的JavaScript零基础入门。最近有些同学问我说,我讲的的比书上的精简不少。其实呢,我主要讲的是我在开发中经常会...

JandenMa ⋅ 今天 ⋅ 0

volatile和synchronized的区别

volatile和synchronized的区别 在讲这个之前需要先了解下JMM(Java memory Model :java内存模型):并发过程中如何处理可见性、原子性、有序性的问题--建立JMM模型 详情请看:https://baike.b...

MarinJ_Shao ⋅ 今天 ⋅ 0

深入分析Kubernetes Critical Pod(一)

Author: xidianwangtao@gmail.com 摘要:大家在部署Kubernetes集群AddOn组件的时候,经常会看到Annotation scheduler.alpha.kubernetes.io/critical-pod"="",以表示这是一个关键服务,那你知...

WaltonWang ⋅ 今天 ⋅ 0

原子性 - synchronized关键词

原子性概念 原子性提供了程序的互斥操作,同一时刻只能有一个线程能对某块代码进行操作。 原子性的实现方式 在jdk中,原子性的实现方式主要分为: synchronized:关键词,它依赖于JVM,保证了同...

dotleo ⋅ 今天 ⋅ 0

【2018.06.22学习笔记】【linux高级知识 14.4-15.3】

14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp

lgsxp ⋅ 今天 ⋅ 0

JeeSite 4.0 功能权限管理基础(Shiro)

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

ThinkGem ⋅ 昨天 ⋅ 0

python f-string 字符串格式化

主要内容 从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快! 在本文的最后,您将了解如何以及为什么今...

阿豪boy ⋅ 昨天 ⋅ 0

Python实现自动登录站点

如果我们想要实现自动登录,那么我们就需要能够驱动浏览器(比如谷歌浏览器)来实现操作,ChromeDriver 刚好能够帮助我们这一点(非谷歌浏览器的驱动有所不同)。 一、确认软件版本 首先我们...

blackfoxya ⋅ 昨天 ⋅ 0

线性回归原理和实现基本认识

一:介绍 定义:线性回归在假设特证满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。为了了解这个定义,我们先举个简单的例子;我们假设一个线性方程 Y=2x+1, x变量为商...

wangxuwei ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部