PHP 7.3声称速度比PHP 5快3倍还多,值得更新了!

作为PHP5的最后一个版本,也是目前使用最广泛的PHP版本,PHP 5.6始于公元2014年(不是1804年,嘿嘿),其第一个测试版PHP 5.6 alpha 1版于2014年1月发布。随机产生了第一个由国人(鸟哥,惠新宸)参与主研的性能大规模提升版本PHPNG(PHP next generation,下一代PHP),2015年基于PHPNG接着就产生PHP 7版本。PHP7带来了革命性的性能提高,其运行速率是5.6的两倍还高以及其他改善,比如64位支持、类型申明、运行时优化等。从2015年开始官方就一直推荐大家尽快升级到php7,虽然当时扩展支持还是很成问题。

根据最新的W3techs统计,目前PHP 7大概占了超过16.6%的PHP份额。 总体上PHP仍然拥有大约83%的网站服务器端开发语言的绝大多数比例。

根据PHP开发支持周期,到今年12月31日后,PHP 5.6不在有官方支持。所以现在只剩下半年时间你升级你的PHP到PHP7。此后PHP5的命运就会终结,而且就虫虫所致目前基本上绝大多数的框架和程序都已经完美的支持PHP7了。

性能测试:PHP 7.3比PHP 7.0快25%

有很多性能测试对比都揭示了PHP 7比PHP 5.6快至少2倍。下面是各大php框架心性能对比图:

下面最新Phoronix基准测试结果则显示了自PHP7发布以来PHP 7的性能对比情况。最新版本的PHP 7.3 Alpha比以初始版本的PHP 7在系能上的改善的也是相当客观的。根据最新数据PHP 7.3是比PHP 5.6快3倍!比PHP 7.0快25%。不说别的光这性能对比图就能给烈日炎炎的夏日带来丝丝凉意。而且这还可以直接体现在费用上,比如升级PHP7后,Badoo大概每年可减少100w美刀。

Badoo公司的数据:

PHP 7兼容行检查

截止目前基本上绝大多数的PHP都可以完美的支持PHP7.0了。但是可能你恰好有一些历史遗留的脚本和程序,那么也好办,社区已经有好多的工具做兼容性检查,甚至给出直接的代码转译,以下是几个值得推荐的工具:

php7cc:一个很不错的工具,不过目前已经不再更新了。(github地址: /sstalle/php7cc)

php7mar:PHP 7迁移助手,虫虫强烈推荐的工具。 (github地址:/Alexia/php7mar)

使用方法:

php mar.php -f="/path/to/project/root/" -r="/path/to/output/"

phan:PHP脚本的静态分析器。 可以做当做php 7的语法检查器。(github地址:/phan/phan)

使用方法:phan --project-root-directory --progress-bar -o phan.out

phpstan - PHP静态分析和兼容性检查工具。(github地址:/phpstan/phpstan)

PHP 7性能设置要点

1. Opcache

首先,确保已经启用了OpCache。可以通过主配置文件php.ini或它独特的配置文件opcache.ini文件(例如/etc/php/7.2/fpm/conf.d/10-opcache.ini)。来进行设置。

zend_extension=opcache.so

opcache.enable=1

opcache.enable_cli=1

可以使用phpinfo()检查,也可以通过终端命令

php -v or php -i | grep opcache.enable

确认PHP OpCache已启用后,很多的ln(a)mp套件都有一个opCache监控脚本,可以对其系能进行实时监控,如下图

2、设置合适的realpath_cache_size

通过设置合宜的realpath_cache_size值可以改善你服务器的并发:

realpath_cache_size = 256k

realpath_cache_ttl = 300

3、禁止mysqlnd.collect_statistics

mysqlnd.collect_statistics = Off

mysqlnd.collect_memory_statistics = Off

线上服务器选择禁止这两个选项,可以减少不必要的数据库访问。如果需要相关统计,可以使用MySQL工具或者监控。

4、使用新的编译器

GCC 4.8编译器下编译时PHP才能开启Global Register for opline and execute_data支持, 这个会带来5%左右的性能提升。

5、开启Transparent HugePage (透传大页)

内存默认是以4KB分页的,而虚拟地址和内存地址需要转换,转化时候需要进行搜索,为了加速转换过程,可以通过内存TLB(Translation Lookaside Buffer)来。所以通过启用大内存页可以增加TLB 缓存命中,从而提高性能。

设置系统支持:

sysctl vm.nr_hugepages=512

php.ini 增加支持

opcache.huge_code_pages=1

关于这个值,很多实践后发现启用透传大页面后会带来系统负载过高,cpu占用过高问题,这时候通过关闭就可以解决。所以这个参数需要实际情况斟酌测试使用。

6、开启PGO

PHP是专门为一个项目服务,比如一个 Wordpress或者drupal站点,就可以使用PGO提高性能。

PHP 7.3声称速度比PHP 5快3倍还多,值得更新了!相关推荐

  1. PHP 7.3声称速度比PHP 5快3倍还多,值得更新了! 1

    PHP 7.3声称速度比PHP 5快3倍还多,值得更新了! 作为PHP5的最后一个版本,也是目前使用最广泛的PHP版本,PHP 5.6始于公元2014年(不是1804年,嘿嘿),其第一个测试版PHP ...

  2. mysql 5.7 速度很快_MySQL5.7速度比MySQL5.6快3倍

    ySQL 5.7 – 新版本,新功能网络研讨会 万众期待的新版本MySQL 5.7已经发布啦.它是目前世界上最受欢迎的开源数据库,MySQL5.7速度比MySQL5.6快3倍,并且改进了可管理性和安全 ...

  3. 中国天眼新发现登Nature封面:恒星形成速度比我们想象快10倍

    晓查 发自 凹非寺 量子位 报道 | 公众号 QbitAI 好消息! "中国天眼"FAST又有新的重大发现,而且还登上了最新一期的Nature封面. 这一次,由国家天文台庆道冲.李 ...

  4. Facebook开源 PyTorch版 fairseq,准确性最高、速度比循环神经网络快9倍

    今年5月,Facebook AI研究院(FAIR)发表了他们的研究成果fairseq,在fairseq中,他们使用了一种新型的卷积神经网络来做语言翻译,比循环神经网络的速度快了9倍,而且准确性也是现有 ...

  5. 英伟达DALI加速技巧:让数据预处理速度比原生PyTorch快4倍

    点击我爱计算机视觉标星,更快获取CVML新技术 本文转载自机器之心. 选自towardsdatascience 作者:Pieterluitjens 机器之心编译 参与:一鸣.嘉明.思 你的数据处理影响 ...

  6. 计算机开机最快,你电脑开机要多久?4招让你的电脑开机速度比之前快几倍

    原标题:你电脑开机要多久?4招让你的电脑开机速度比之前快几倍 你电脑开机要多久呢?这真是个沉重的问题,有人沾沾自喜,有人无地自容- 唯一确定的是:大家都想要自己的电脑速度越快越好.那电脑速度是由什么决 ...

  7. 为什么串口传输速度比并口快?

    计算机系统的信息交换有两种方式:并行数据传输方式和串行数据传输方式. 并行数据传输是以计算机的字长,通常是8位.16位.32位为传输单位,一次传送一个字长的数据.它适合于外部设备与CPU之间近距离信息 ...

  8. 苹果可能正在测试LiFi技术 速度比WiFi快一百倍

    据国外媒体报道,业内人士从iOS 9.1系统中发现的代码来判断,苹果可能正在测试一种名为LiFi的新技术. LiFi技术是由爱丁堡大学的研究员Harald Haas发明的,现在已经被多家公司所采用. ...

  9. PyTorch 版 EfficientDet 比官方 TF 实现快 25 倍?这个 GitHub 项目数天狂揽千星

    来源:机器之心 本文约3646字,建议阅读8分钟. 本文介绍在 Github 项目中,开发者 zylo117 开源了 PyTorch 版本的 EfficientDet,速度比原版高 20 余倍.如今, ...

最新文章

  1. Spring——依赖注入类型
  2. ub c语言,操作系统之LRU算法 C语言链表实现
  3. 扩号匹配问题(信息学奥赛一本通-T1203)
  4. 5月20日,GaussDB将有大事发生
  5. 哈哈,代码比较工具,好像就这5款比较顺手~~~
  6. php零售,ThinkPHP开源新零售小程序_萤火商城系统
  7. Linux Command diff 文件比较
  8. Go channel详解
  9. 手把手教你建立数据指标体系
  10. 恢复服务器误删文件,云服务器误删文件恢复
  11. 有什么适合小团队的协作工具?
  12. 短信验证码平台有哪些比较好用?
  13. 小米手机更改 MIUI 内测机制,每周必须提交 Bug
  14. 跨境物流运输方式有哪些
  15. 红外测温仪技术方案开发
  16. 亚马逊首席技术官:2023年及未来五大技术趋势预测 | 美通社头条
  17. 大学校园IP网络广播-厂家基于校园局域网的大学校园IP广播方案设计指南
  18. mysql 查询玩家活跃天数
  19. cmd下无法启动MySQL的几种原因及解决方法
  20. 多多情报通:拼多多可以看到什么软件?拼多多的大数据分析软件是什么?

热门文章

  1. bootstrap 多选框
  2. Echarts 动态获取数据进行图表的展示
  3. EventBus3.0源码解析
  4. Android之对资源图片进行比例缩放
  5. 自定义Activity的启动关闭动画
  6. iOS 绘画 点与像素
  7. 编译-C语言库FFTW支持iOS平台的静态库
  8. 14、Docker监控方案(Prometheus+cAdvisor+Grafana)
  9. [大话数据结构-读书笔记] 栈
  10. Mac Vim 如何设置高亮