新浪云的PHP7版本运行环境上线了,相对于PHP5,PHP7的性能,在官方宣传和实际应用测试中都有极好的性能表现,大多数的主流应用和框架都有超过1倍的性能提升。
随着新浪云支持PHP7运行环境,将应用切换到PHP7版本运行无疑是更好的选择,但是,由于PHP7的修改十分巨大,因此,有极少部分的代码是不兼容的,需要针对性的进行修改,想比较巨大的性能提升,这些小的修改就变得微不足道啦~
目前新浪云的PHP7极度接近标准PHP7环境,几乎对原版PHP7没有任何修改,因此,能在原版PHP7环境中运行的程序,一定可以在新浪云无缝运行。
针对PHP7的修改,官方也提出了迁移指南,通过迁移指南,可以根据实际情况,满足PHP7的代码编写要求。
其中,最重要的有以下四项:
1mysql系列函数被移除mysql系列函数(mysql_connct,mysql_qury…),在PHP5.5.0起已经被标记为废弃状态,并在PHP7版本中已经移除,官方更加推荐使用mysqli系列函数,或者PDO进行数据库的相关操作,如果您在代码中使用了mysql系列函数,需要将其修改为mysqli,或者使用PDO,以便能在PHP7环境运行。
2$HTTP_RAW_POST_DATA被移除同样的,$HTTP_RAW_POST_DATA变量在PHP5.6.0中被标记为废弃状态,在PHP7中已经移除,因此,需要使用php://input作为替代。
3g系列函数被移除g系列函数(g,gi,g_plac…)等也同样被移除了,如果有类似的调用,需要替换为pg相关的函数。
4针对新浪云的服务原有的SaCountr,SaRank已经不再支持,需要使用Rdis服务进行替换。同时,SaKV扩展暂时也不提供支持,即无法使用KVDB服务。
除了上述的一些比较大的修改,还有一些小的变更,可以参考迁移指南,或者,直接切换到PHP7版本,根据错误日志,找到不符合规范的地方,直接修改就好啦~
放一个针对PHP7运行环境的性能测试,结果会让你大吃一惊的!
说一下测试环境:
在一台机器上,使用ab进行压测,设置连接数为30,测试请求总数为,换用不同的PHP版本,应用为WordPss4.6.1全新安装版本,可以得到下面的结果:
PHP5.3ConcurncyLvl:30Timtaknfortsts:21.scondsCompltqusts:Faildqusts:0Writrrors:0Totaltransfrd:bytsHTMLtransfrd:bytsRqustsprscond:47.07[#/sc](man)Timprqust:.[ms](man)Timprqust:21.[ms](man,acrossallconcurntqusts)Transfrrat:.55[Kbyts/sc]civd
PHP5.6ConcurncyLvl:30Timtaknfortsts:22.scondsCompltqusts:Faildqusts:0Writrrors:0Totaltransfrd:bytsHTMLtransfrd:bytsRqustsprscond:44.05[#/sc](man)Timprqust:.[ms](man)Timprqust:22.[ms](man,acrossallconcurntqusts)Transfrrat:.96[Kbyts/sc]civd
PHP7ConcurncyLvl:30Timtaknfortsts:4.scondsCompltqusts:Faildqusts:0Writrrors:0Totaltransfrd:bytsHTMLtransfrd:bytsRqustsprscond:.54[#/sc](man)Timprqust:.[ms](man)Timprqust:4.[ms](man,acrossallconcurntqusts)Transfrrat:.31[Kbyts/sc]civd
可以看到,性能差距巨大,同样的请求数和并发,生成的内容长度也相同
PHP7的QPS从PHP5的44.05/sc和47.07/sc,暴涨到.54/sc,实现了几乎5倍的增长,每个请求的时间也从ms左右降低到了只有ms!
有如此提升,还不赶紧试试PHP7的强大威力!
如何创建PHP7的运行环境呢?进入SAE控制台,点击版本迁移图标,就可以一键在PHP5.3,PHP5.6,PHP7三个版本之前轻松秒级切换。
鼠标点点~放到你需要的版本就好啦!
在SAE控制台中,也可以直接创建PHP7的应用,在创建新应用时,语言版本选择“7.0”,超高性能极致速度的PHP7运行环境的应用就建好啦!
预览时标签不可点收录于话题#个上一篇下一篇