level 11
小子嘿咻嘿咻
楼主
大约两年前,Facebook首次推出了HipHop。它是一个源代码转换器,将PHP代码转换为高度优化的C++代码,然后再使用g++编译器编 译。HipHop被Facebook广泛运用,其网站所有PHP代码都经HipHop转换过,旗下其他网站也采用HipHop来优化。 不过,最初代码是由一个HipHop静态编译器转换的。即PHP代码先编译成二进制形式,然后再部署。该方法有个重大问题,因为它使得维护及优化代码更加 困难,且其增加的几个环节也使得bug更容易进入。
在随后的开发中,Facebook使用了一个可以即时转换的HipHop解释器HPHPi。它比之前的编译器要缓慢得多,但相对于每个变化都得编译的情况要好很多。但这也意味着Facebook需要同时维护编译器和HPHPi两个HipHop工具。
在这种情况下,一个新的HipHop虚拟机(HHVM)诞生了。Facebook的工程师介绍,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点。Facebook表示,HHVM将替代HPHPi,用于所有的PHP执行。根据 Facebook透漏,HHVM在速度方面获得了显著改进,比目前使用的PHP解释器快60%,而使用内存减少90%。
Facebook于12年十二月初发布了一个博文,宣布他们的解释型PHP运行环境HHVM(HipHop VM)已经达到甚至超过了编译型PHP运行环境HipHop的运行速度。
Facebook现在已将HHVM开源,同时弃用了HPHPi并移除了对它的构建支持。到2013年中期,他们将不再支持 HPHPc。HHVM提供了支持Ubuntu 12.04的预构建包以及支持CentOS 6.3的构建说明,而对FreeBSD 9和Mac OS的支持将于明年HPHPc退役之后再提供。
目前HipHop只支持64位,并且在128M的内存上编译会有问题!
2014年03月22日 02点03分
1
在随后的开发中,Facebook使用了一个可以即时转换的HipHop解释器HPHPi。它比之前的编译器要缓慢得多,但相对于每个变化都得编译的情况要好很多。但这也意味着Facebook需要同时维护编译器和HPHPi两个HipHop工具。
在这种情况下,一个新的HipHop虚拟机(HHVM)诞生了。Facebook的工程师介绍,它是一个PHP的JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点。Facebook表示,HHVM将替代HPHPi,用于所有的PHP执行。根据 Facebook透漏,HHVM在速度方面获得了显著改进,比目前使用的PHP解释器快60%,而使用内存减少90%。
Facebook于12年十二月初发布了一个博文,宣布他们的解释型PHP运行环境HHVM(HipHop VM)已经达到甚至超过了编译型PHP运行环境HipHop的运行速度。
Facebook现在已将HHVM开源,同时弃用了HPHPi并移除了对它的构建支持。到2013年中期,他们将不再支持 HPHPc。HHVM提供了支持Ubuntu 12.04的预构建包以及支持CentOS 6.3的构建说明,而对FreeBSD 9和Mac OS的支持将于明年HPHPc退役之后再提供。
目前HipHop只支持64位,并且在128M的内存上编译会有问题!