HHVM 3.9.3 、3.12.2 和 3.13.2 发布 - 开源中国社区
HHVM 3.9.3 、3.12.2 和 3.13.2 发布
oschina 2016年06月05日

HHVM 3.9.3 、3.12.2 和 3.13.2 发布

oschina oschina 发布于2016年06月05日 收藏 15 评论 16

阿里云高性能云服务器,2折起! >>> >>>  

HHVM 3.9.3 和 3.12.2 发布了。

HHVM 3.9.3 下载地址:

HHVM 3.12.2 下载地址:

HHVM 3.13.2 下载地址:

HHVM 3.9.3 和 3.12.2 发布了。

HHVM 3.9.3 下载地址:

HHVM 3.12.2 下载地址:

HHVM 3.13.2 下载地址:

HipHop VM(HHVM)是Facebook推出的用来执行PHP代码的虚拟机,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点。

Facebook表示,HHVM将替代HPHPi,用于所有的PHP执行。根据 Facebook透漏,HHVM在速度方面获得了显著改进,比目前使用的PHP解释器快60%,而使用内存减少90%。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:HHVM 3.9.3 、3.12.2 和 3.13.2 发布
分享
评论(16)
最新评论
0

引用来自“xtrace”的评论

别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发

引用来自“eechen”的评论

上面的测试中,都吃干了系统CPU,但5个PHP-FPM工作进程占用的内存远比一个HHVM的少,你是不是要哭了呢?

引用来自“xtrace”的评论

你还真是无知者无畏啊。我觉得你根本就没实测过,就在这信口开河,张嘴胡喷。目前我们公司的新项目已全部基于hhvm,先期技术选型,做了超过两周的对比压测,在50多台服务器的测试集群上,hhvm在各项指标上全面胜出php 7。像你这类屌丝每日跪舔的鸟哥都只是说"PHP7已经和HHVM有了相当的性能水平",还未曾说过php7已超过hhvm,你这种屌丝在这里胡乱叫嚣就能扭转事实,真是搞笑。

引用来自“eechen”的评论

HHVM是Facebook在HPHPc之后的救场项目,引入JIT虚拟机,拼计算,欺负PHP解释器倒可以,但是分分钟被JVM秒,
而且还不稳定,僵死崩溃时有发生,不另外设一套机制去保护HHVM,你敢用?
跟着Facebook吃螃蟹的滋味不好受呀,不信你去看看百度尝到的HHVM苦果:
百度转HHVM遇到的问题:崩溃/内存泄露/兼容性/死锁/性能(JIT热身/没有触发JIT).
http://lamp.baidu.com/2014/11/04/hhvm-in-baidu/
不过百度他们认为资源的节约对于大规模的应用收益很大,所以忍了,哈哈!
哥哥,你仔细看:
百度HHVM遇到的问题:崩溃/内存泄露/兼容性/死锁/性能(JIT热身/没有触发JIT)
这些问题是我们已经FIX的,PHP7 你问问微博的同学,应该你会了解里面是否有坑;
关于性能,你可以引用我的一篇:
http://lamp.baidu.com/2014/12/31/hhvm-vs-phpng/

你看看性能对比你就知道了;
BAIDU 内部的HHVM 比官方性能还要优于10%-15%;
我最近可以写一篇HHVM 相关文章,欢迎拍砖
0

引用来自“xtrace”的评论

别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发

引用来自“eechen”的评论

上面的测试中,都吃干了系统CPU,但5个PHP-FPM工作进程占用的内存远比一个HHVM的少,你是不是要哭了呢?

引用来自“xtrace”的评论

你还真是无知者无畏啊。我觉得你根本就没实测过,就在这信口开河,张嘴胡喷。目前我们公司的新项目已全部基于hhvm,先期技术选型,做了超过两周的对比压测,在50多台服务器的测试集群上,hhvm在各项指标上全面胜出php 7。像你这类屌丝每日跪舔的鸟哥都只是说"PHP7已经和HHVM有了相当的性能水平",还未曾说过php7已超过hhvm,你这种屌丝在这里胡乱叫嚣就能扭转事实,真是搞笑。

引用来自“eechen”的评论

HHVM是Facebook在HPHPc之后的救场项目,引入JIT虚拟机,拼计算,欺负PHP解释器倒可以,但是分分钟被JVM秒,
而且还不稳定,僵死崩溃时有发生,不另外设一套机制去保护HHVM,你敢用?
跟着Facebook吃螃蟹的滋味不好受呀,不信你去看看百度尝到的HHVM苦果:
百度转HHVM遇到的问题:崩溃/内存泄露/兼容性/死锁/性能(JIT热身/没有触发JIT).
http://lamp.baidu.com/2014/11/04/hhvm-in-baidu/
不过百度他们认为资源的节约对于大规模的应用收益很大,所以忍了,哈哈!
怎么不继续叫嚣php7性能比hhvm好了?别怂啊
0
Box迁移到HHVM遇到的问题:
http://www.oschina.net/translate/under-the-hood-box-s-hhvm-migration
PHP 是一个非常庞大的语言。仅它的核心运行环境就包含大量的函数,配置设置和大量的类,这些都是十多年的社团贡献累积而来的。
这甚至还不包括大量的 PHP 扩展,所有这些扩展也必须移植到 HHVM 上。
让 HHVM 具有与默认的 PHP 解释器几乎完全相同的功能本身就是惊人的重大壮举。

HHVM 的多路处理模型(MPM)与以前我们曾经使用过的 Apache prefork 多路处理模型完全不同。
HHVM 给每个请求提供服务的是一个工作者线程,而 Apache prefork 则给每个请求提供服务的是一个工作者进程。
这对我们来说就有一点挑战。一旦发现问题所在,我们首先要做的就是进行相对简单的漏洞修复:
我们曾经使用过 PHP 的进程 ID 来区分日志文件和其他临时文件。
由于 HHVM 使用的是单一进程,因此当前的进程 ID 是不能用来区分并发的多个请求了。

由 HHVM 的多路处理模块(MPM)的差异还引起了另一个更加严重的问题:内存泄漏!
在 Apache prefork 的多路处理模块里,缓慢的内存泄漏不会太引起人们的关心,因为工作者进程在服务完一定量的请求后会被回收。
而在 HHVM 里,这种待遇不再有了。我们在多天非标准负载的 HHVM 上碰到了非常难以处理的内存泄漏。
经过大量对 jemalloc 的仔细设置,我们追踪到问题是由第三方库引起的,并马上对其打上补丁。
打上这个补丁之后,在许多天服务数百万个请求的情况下,HHVM 的内存消耗始终保持稳定。

HHVM运行在最佳性能时有两点与众不同的,这两个不同点迫使我们重新思考了一下我们PHP应用的部署方式。
第一个不同点是HHVM需要对新编写代码“热身”以后才能达到最佳性能。
第二个不同点是规律性地重新启动HHVM以达到最佳性能。

HHVM的使用者,去角落哭去,哈哈!
0

引用来自“xtrace”的评论

别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发

引用来自“eechen”的评论

上面的测试中,都吃干了系统CPU,但5个PHP-FPM工作进程占用的内存远比一个HHVM的少,你是不是要哭了呢?

引用来自“xtrace”的评论

你还真是无知者无畏啊。我觉得你根本就没实测过,就在这信口开河,张嘴胡喷。目前我们公司的新项目已全部基于hhvm,先期技术选型,做了超过两周的对比压测,在50多台服务器的测试集群上,hhvm在各项指标上全面胜出php 7。像你这类屌丝每日跪舔的鸟哥都只是说"PHP7已经和HHVM有了相当的性能水平",还未曾说过php7已超过hhvm,你这种屌丝在这里胡乱叫嚣就能扭转事实,真是搞笑。
HHVM是Facebook在HPHPc之后的救场项目,引入JIT虚拟机,拼计算,欺负PHP解释器倒可以,但是分分钟被JVM秒,
而且还不稳定,僵死崩溃时有发生,不另外设一套机制去保护HHVM,你敢用?
跟着Facebook吃螃蟹的滋味不好受呀,不信你去看看百度尝到的HHVM苦果:
百度转HHVM遇到的问题:崩溃/内存泄露/兼容性/死锁/性能(JIT热身/没有触发JIT).
http://lamp.baidu.com/2014/11/04/hhvm-in-baidu/
不过百度他们认为资源的节约对于大规模的应用收益很大,所以忍了,哈哈!
0
我是看评论的,目前只用5.5,等你们讨论完了,我再换
0
评论好精彩
0

引用来自“xtrace”的评论

别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发

引用来自“eechen”的评论

上面的测试中,都吃干了系统CPU,但5个PHP-FPM工作进程占用的内存远比一个HHVM的少,你是不是要哭了呢?
你还真是无知者无畏啊。我觉得你根本就没实测过,就在这信口开河,张嘴胡喷。目前我们公司的新项目已全部基于hhvm,先期技术选型,做了超过两周的对比压测,在50多台服务器的测试集群上,hhvm在各项指标上全面胜出php 7。像你这类屌丝每日跪舔的鸟哥都只是说"PHP7已经和HHVM有了相当的性能水平",还未曾说过php7已超过hhvm,你这种屌丝在这里胡乱叫嚣就能扭转事实,真是搞笑。
0

引用来自“xtrace”的评论

别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发

引用来自“eechen”的评论

上面的测试中,都吃干了系统CPU,但5个PHP-FPM工作进程占用的内存远比一个HHVM的少,你是不是要哭了呢?
最新版本的有测试吗
0

引用来自“xtrace”的评论

别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发
上面的测试中,都吃干了系统CPU,但5个PHP-FPM工作进程占用的内存远比一个HHVM的少,你是不是要哭了呢?
0
PHP7 Beta2 with ZendOpcache:
sudo /png/php/7.0.0-beta/png_fpm start
mem php-fpm 内存 7.2MB + 6.3MB
time curl -I http://www.example.com/app/wordpress/ 耗时0m0.159s (跟有hhbc字节码缓存的HHVM第一次响应耗时相近)
mem php-fpm 内存 7.2MB + 20.7MB
time curl -I http://www.example.com/app/wordpress/ 耗时0m0.036s (比HHVM快了32%)
mem php-fpm 内存 7.2MB + 20.7MB (内存占用比HHVM少了83%)
PHP7 Beta2 without ZendOpcache:
sudo /png/php/7.0.0-beta/png_fpm restart
mem php-fpm 内存 7.1MB + 6.3MB
time curl -I http://www.example.com/app/wordpress/ 耗时 0m0.115s
mem php-fpm 内存 7.1MB + 18MB
sudo /png/php/7.0.0-beta/png_fpm stop
0

引用来自“xtrace”的评论

别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发
没测试过就别自以为是了呀:

HHVM 3.8.1:
mkdir -p /png/hhvm/3.8.1/var/run/hhvm
sudo chown png:png -R /png/hhvm/3.8.1/var
sudo /png/hhvm/3.8.1/etc/init.d/hhvm start
mem hhvm && ls -lh /png/hhvm/3.8.1/var/run/hhvm/hhvm.hhbc 内存160MB,文件4MB
time curl -I http://www.example.com/app/wordpress/ 耗时0m1.292s
mem hhvm && ls -lh /png/hhvm/3.8.1/var/run/hhvm/hhvm.hhbc 内存169MB,文件12MB
time curl -I http://www.example.com/app/wordpress/ 耗时0m0.053s
mem hhvm && ls -lh /png/hhvm/3.8.1/var/run/hhvm/hhvm.hhbc 内存169MB,文件12MB
sudo /png/hhvm/3.8.1/etc/init.d/hhvm restart
time curl -I http://www.example.com/app/wordpress/ 耗时0m0.136s
mem hhvm && ls -lh /png/hhvm/3.8.1/var/run/hhvm/hhvm.hhbc 内存160MB,文件12MB
sudo /png/hhvm/3.8.1/etc/init.d/hhvm stop
0
别只比速度啊,内存占用上,php7依然要比hhvm多五到八倍。所以同样配置的电脑,hhvm还是能比php7多很多并发
0
Facebook HHVM官方只提供了Ubuntu/Debian软件源:
https://github.com/facebook/hhvm/wiki/Prebuilt%20Packages%20for%20HHVM
http://dl.hhvm.com/ubuntu/
http://dl.hhvm.com/debian/
由此可以推测,Facebook的服务器应该大量部署了Ubuntu/Debian系统.
0
PHP7中支持用opcache.file_cache导出脚本opcode实现源代码保护
http://my.oschina.net/eechen/blog/539995
opcache.file_cache是PHP7对hhvm.repo.central.path的反击,鸟哥威武!
opcache.file_cache一定程度上是可以实现源代码逻辑保护的,你要用"浏览器/WebView+PHP内置HTTP服务器"的模式开发桌面应用时,会用到,不过ZendOpcache现在还不能交叉编译ARM版本:
http://my.oschina.net/eechen/blog/501341
http://my.oschina.net/eechen/blog/655689

另外,PHP-FPM的FastCGI进程池架构也比HHVM多线程稳定多了,连数据库连接池都是透明的,不需要程序关心,还可以配合Nginx实现密集I/O分离:
http://my.oschina.net/eechen/blog/541139
0
Xubuntu(i5-3230M)上,简单的time curl WordPress首页测试,PHP7 Beta2比HHVM 3.8.1快32%!
PHP7和HHVM均进行了热身,PHP7缓存有opcode,HHVM缓存有hhbc(即hiphop bytecode).
http://static.oschina.net/uploads/space/2015/0802/154304_lP6z_561214.png
如果对测试数据存在质疑,欢迎下载我在Ubuntu上打包的适用于64位的Linux的PHP7 Beta2 with Swoole和HHVM 3.8.1自行测试:
http://my.oschina.net/eechen/blog/411534
除了解压即用的二进制包,里面还有详细的打包步骤.

ab -c100 -n1000 http://www.example.com/app/wordpress/
100并发完成1000个请求,PHP7(开启opcache,5个PHP-FPM工作进程)每秒处理117个请求,HHVM则是每秒126个,性能差距很小.
值得一提的是,HHVM没有热身时(第一次压测),每秒只能处理56个请求,而PHP7仍能处理117个请求.

鸟哥的亲密战友Dmitry(俄国人)发布了PHP7正式版最终的性能测试结果:
http://static.oschina.net/uploads/space/2015/1206/092751_TliT_561214.png
bench.php计算密集型测试中,PHP7耗时仅为PHP5.6的0.36倍,CPU指令数为PHP5.6的0.45倍.
WordPress真实应用测试中,PHP7耗时仅为PHP5.6的0.39倍,CPU指令数为PHP5.6的0.25倍.

PHP7(ZendOpcache)驱动的WordPress的速度接近静态页的速度(0.028s):
http://static.oschina.net/uploads/space/2015/0729/011656_TwPy_561214.png
0
我一直觉得HHVM才是PHP之后的方向 ,而不是现在的那种。呵呵。个人观战。
顶部