非死book发布全新JIT PHP编译器 - 开源的HipHop虚拟机
openkk 13年前
<strong>非死book的PHP改进计划又收获了一款重要产品,近日他们<a href="/misc/goto?guid=4958318560296318668" target="_blank">宣布</a>了一个新的开源<a href="/misc/goto?guid=4958318561083355070" target="_blank">HipHop</a>虚拟机,能够即时转换PHP代码并在性能上获得重大改进。</strong> <br /> <br /> 大约两年前, <a href="/misc/goto?guid=4958318561870539139" target="_blank">非死book首次推出了HipHop</a>。它是一个源代码转换器,将PHP代码转换为高度优化的C++代码,然后再使用g++编译器编译。HipHop被非死book广泛运用,其网站所有PHP代码都经HipHop转换过,旗下其他网站也采用HipHop来优化。 <br /> <br /> <div style="text-align:center;"> <img alt="非死book发布全新JIT PHP编译器 - 开源的HipHop虚拟机" src="https://simg.open-open.com/show/49267569d6d42a1dcc72359f9f7f70b6.png" width="213" height="278" /> </div> <br /> 不过,最初代码是由一个HipHop静态编译器转换的。即PHP代码先编译成二进制形式,然后再部署。该方法有个重大问题,因为它使得维护及优化代码更加困难,且其增加的几个环节也使得bug更容易进入。 <br /> <br /> 在随后的开发中,非死book使用了一个可以即时转换的HipHop解释器HPHPi。它比之前的编译器要缓慢得多,但相对于每个变化都得编译的情况要好很多。但这也意味着非死book需要同时维护编译器和HPHPi两个HipHop工具。 <br /> <br /> 在这种情况下,一个新的HipHop虚拟机(HHVM)诞生了。非死book的工程师介绍,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点。非死book表示,HHVM将替代HPHPi,用于所有的PHP执行。根据 非死book透漏,HHVM在速度方面获得了显著改进,比目前使用的PHP解释器快60%,而使用内存减少90%。 <br /> <br /> 目前非死book已将该HipHop虚拟机开源,源代码发布在 <a href="/misc/goto?guid=4958318562672765368" target="_blank">GitHub</a>上。关于该工具的技术原理在非死book的开发者页面上有一篇详细的文章介绍, <a href="/misc/goto?guid=4958318560296318668" target="_blank">查看这里</a>。 <br /> <br /> Via <a href="/misc/goto?guid=4958318564179867815" target="_blank">softpedia</a> <br /> <br /> 转自: <a href="/misc/goto?guid=4958318564967083195" target="_blank">http://www.iteye.com/news/23687</a>