PHP是Web开发最流行的脚本语言之一。最新版本的PHP,PHP7在性能上做了很大的优化。然而,PHP也有一个竞争对手HHVM(HipHop虚拟机)——一种运行PHP代码的虚拟工具。两者之间的直接比较正在升温,那么让我们来看看它们的直接性能比较。什么是HHVM?2008年,Facebook开始努力开发一种工具,将PHP脚本转换为C++,以便它们可以在Web服务器上编译和运行。目的是节省服务器资源,这是一个重要的目标,因为Facebook的用户群正在迅速增长。从这个意义上说,该项目是成功的,因为它使服务器能够处理比以前多五到六倍的请求量。回到2010年,Facebook的服务器需求增加了很多,是时候考虑使用新的创新来提高更高的效率了。基于这个需求,Facebook开发了HHVM。HHVM使用即时(JIT)编译将PHP代码转换为某种字节码。接下来,将字节码转换成机器码并优化它以尽可能快地运行。什么是PHP7?PHP7是PHP社区对HHVM的回应。PHP7发布的预览版号称比之前的PHP5性能提升100%,你可能会问PHP版本直接从PHP5跳到了PHP7。答案是这样的:PHP6的开发始于2005年,但是进度太慢,出现了很多问题,以致PHP6在正式版之前没有发布,名声不好。所以PHP社区决定直接将新版本的语言命名为PHP7。真正的问题不是PHP5和PHP7之间的比较,因为很明显PHP7提供了更快的运行时间。但是我们要比较的是PHP7和HHVM。许多专家分别使用这两种方法来处理PHP代码,并揭示了一些有趣的结论。PHP7和HHVM的相同点和不同点:在回答哪个更好之前,让我们先看看它们之间的主要区别和相同点。代码解析:PHP7和HHVM的根本区别在于它们解析PHP代码的方式。PHP7使用标准的PHP解析器,是人人可用的免费软件,可以直接在服务器上解析运行。它生成HTML代码,然后发送到客户端,客户端显示用户期望的内容。相比之下,HHVM首先将PHP代码转换成HipHop字节码,再翻译成机器码执行。在这个过程中,HHVM会对代码进行优化,优化一些影响执行效率的PHP代码,目的是提高运行速度。编写代码:PHP解析器和HHVM都可以获取并运行PHP代码。这样写代码的过程是完全一样的。但是如果你想使用HHVM,你需要在你的服务器上安装HHVM,然后在命令行中通过HHVM命令调用它。性能测试:HHVM提供比以前的PHP版本更快的性能。但是最近的性能测试表明PHP7至少在某些情况下比HHVM稍微快一些。我们来看看Kinsta做的性能测试结果:WordPress:运行在WordPress4.1.1上的PHP7每秒可以执行的请求数是PHP5.6的两倍多,但是没有HHVM3.6.1提供的那么多,在测试中HHVM执行每秒624个请求,而PHP7只执行604。Drupal:PHP7可以为Drupal用户提供比HHVM更显着的优势。PHP7在Drupal8上的处理响应效率比HHVM高出37个百分点以上。哪些公司使用HHVM?除了开发HHVM的Facebook之外,还有许多其他公司使用此解决方案在其服务器上运行带有HHVM的PHP应用程序,包括Wikimedia和电子商务网站Etsy。维基媒体:维基媒体拥有丰富的教育内容,包括著名的在线百科全书维基百科。维基百科每月吸引近5亿互联网用户。为了满足这样的高级需求,需要优化服务器的性能。与PHP相比,HHVM具有明显的优势。它可以同时加载多个SPU核心,而PHP是单线程语言,无法并行。维基百科部署HHVM后,CPU负载从50%下降到10%,用户提交编辑的平均响应时间减少了一半,平均页面加载时间从1.3秒下降到0.9秒。Etsy:拥有5400万用户的Tesy也迫切需要提高服务器性能。Etsy工程师对比了HHVM和PHP5.4的性能,发现HHVM每秒可以处理280个服务器请求,而对于PHP5.4,如果每秒钟请求数超过190,服务器的响应时间会急剧增加.PHP7和HHVM的未来是什么?由于PHP7稳定版将于2015年11月发布,目前还没有公司使用这种新语言。由于PHP7beta版在基准测试中表现良好,未来将吸引更多人关注。多家公司使用PHP7。PHP的前景一片光明,但HHVM呢?它可能会继续生活得很好。许多公司已经使用HHVM来提高其网站的性能,并且在PHP和HHVM之间迁移不是一蹴而就的过程。Etsy至少用了6个月。由于与HHVM相比,PHP7的性能提升不大,因此这些公司不太可能急于转向PHP。Facebook仍将继续开发HHVM。它最近宣布支持Apple的操作系统,使在Apple开发环境中工作的开发人员可以使用该技术。HHVM的开发者认为,在很多情况下,HHVM比PHP7更快,包括WorldPress。为什么HHVM和PHP7竞争在线商店所有者?作为网店老板,您需要根据您网店所在的平台来决定是使用PHP7还是HHVM。如果你的网站是用WorldPress创建的,那么你可以看看最新版HHVM和PHP7的benchmark测试结果,从测试结果中你可以发现两者在性能上的差异,然后你可以选择解决方案.***最大限度地减少页面加载时间、服务器响应时间和CPU使用率。选择HHVM的理由HHVM使用动态翻译技术,在大多数情况下(包括WordPress)可以提供更高的性能。HHVM在处理大量请求时,可以保证每个请求只使用少量内存。HHVM开发人员正在稳步增加引擎可以运行的PHP代码量,它已经可以运行最新版本的WorldPress,以及其他常见的PHP框架和应用程序。HHVM是开源的,尽管HHVM是由Facebook开发的,但它是开源的,这意味着任何人都可以使用和修改其源代码。选择PHP7的原因PHP7在某些情况下比HHVM更快,包括运行Drupal8。使用PHP7不需要安装HHVM。尽管新版本不再支持许多PHP4功能,但用PHP5编写的代码在转换为PHP7时仍可按预期工作。PHP7由PHP社区开发,该社区长期享有稳定稳定的声誉和可靠的PHP版本。HHVM与PHP7:不要犹豫太久做出选择,Kinsta建议那些在线网站尝试在PHP7和HHVM之间做出选择,并尽早开始实施该解决方案以优化您的网站性能。低效的网站也会损害您的声誉,而且很难恢复。HHVM和PHP7都比旧版本的PHP更有用。尽快决定将您的网站切换到新系统。英文原文:dzone.com,译文:oschina.net
