文件名称:Facebook开源的高效的PHP运行环境HHVM.zip
文件大小:33.94MB
文件格式:ZIP
更新时间:2022-08-07 23:04:20
开源项目
HHVM即HipHop Virtual Machine,目前是3.0版本,出自Facebook,它先将PHP和Hack程序编译为中间字节码,然后通过just-in-time (JIT)编译器将字节码动态翻译为x64机器代码,应用上了非常多的编译优化技术。 JIT就是HHVM高效率的所在,所谓字节码:是一种人类无法阅读的代码,专门用来给编译器高效执行的。当HHVM首次加载项目时,它会将所有的PHP代码转换成字节码;字节码的生成是与平台无关的。 机器码是一系列供CPU执行的指令。用过汇编的都应该清楚机器码,估计没人喜欢用汇编编程。通过编译器就可以把汇编转成机器码,然后供CPU处理。JIT(即时)编译器是指在运行时才会去编译字节码。字节码会存放在内存中,然后JIT编译器会根据需要加载并编译所涉的字节码。 通过以上技术,HipHop和HHVM获得了性能的提升。据官方介绍,与PHP 5.2引擎 APC相比,HHVM可以处理的Web请求吞吐量增加了9倍,而内存消耗减少了5倍。实际上HHVM之前有朋友留言提起过它,亲自测试过后发现HHVM在提升PHP处理速度上非常有优势,非常适合大型的网站。 最近,HHVM已经更新到了3.0版本,HHVM几乎已经完全支持PHP 5.5了,但还是有不少bug,所以不是所有应用程序都可以运行。因此,Facebook准备让最流行的20个开源PHP项目能够运行在HHVM上。第一个已经支持的项目就是Wordpress。不过对于国内的Discuz兼容还不太完美。 除了开发出 HHVM 的 FaceBook 公司外,还有很多其他公司也采用了这个方案,在服务器上用 HHVM 运行 PHP 应用,包括 Wikimedia 和电子商务网站 Etsy。Wikimedia:Wikimedia 拥有大量的教育内容,包括著名的在线百科全书*。*每 个月吸引着近五亿的互联网用户,为了满足这样高级的需求,需要优化服务器的性能,和 PHP相比 HHVM 有一个显著的优点,它可以同时加载多个 SPU 核心, 而 PHP 是单线程语言,不能被并行化。*部署了 HHVM 后,CPU 的负载从50%降到了10%,用户提交编辑时的平均响应时间减少到原来的一半,页面的平均加载时间从原来的1.3秒降到了0.9秒。 Etsy: 拥有五千四百万用户的 Tesy 同样迫切需要提高服务器性能,Etsy 的工程师对比了HHVM 和 PHP5.4 的性能,发现 HHVM 每秒可以处理280个服务器请求,而对于 PHP5.4,如果每秒的请求数超过了190次,服务器的响应时间就会急剧增加。 官网地址是:http://hhvm.com/ (不过国内无法访问) 标签:facebook开源