HipHop for PHP是一系列PHP脚本语言的代码转换器的集合,它包含HPHPc、HPHPi、HPHPd以及HHVM,这四个脚本引擎各有所不同,但是他们共享相同的运行时(Runtime)及工具集(Toolset)。HipHop是由Facebook所创建,他们用它来节省服务器的资源。HipHop被发布时,已经是高达60万行由C++及C所撰写的代码,它以自由软件发布,采用PHP许可证 3.01版。

HipHop for PHP可显著的增快PHP应用程序的速度,借由2到6个已观察到的要素,HipHop改善了网页生成的性能[1][2]。

目录
1 历史
1.1 HPHPc
1.2 HPHPi
1.3 HPHPd
1.4 HHVM
2 使用HipHop for PHP
3 另见
4 参考文献
5 外部链接
历史
一开始,HipHop由Haiping Zhao于Facebook领衔开发,运行于CentOS及Fedora操作系统。在发布之前,已经被开发了两年,最后于2010年2月2日发布,但由于技术的困难,实际发布的时间延后18天[3][4],于2月20日发布在公开的Git程序库。

HPHPc
这是最原始版本的HipHop(被称之为HPHPc),它可以将PHP的代码转换成C++的代码,并且利用g++将它编译成机器语言。Facebook使用它多年,但由于他对于开发者并不友善,而且Facebook庞大的程序库使得开发者在进行程序更动时,必须等待数个小时的编译,所以HipHop在2013年2月19日被官方弃用[5]。

HPHPi
HPHPc的开发者模式版本(被称之为HPHPi)被用来处理PHP代码,它在运行时期进行编译,但与HPHPc使用相同的运行时期以及运行逻辑,比起HPHPc,它的运行性能较低,但它令开发者可以使用与产品发布时相同堆栈的代码。当前HPHPi的支持也已经终止。

HPHPd
HipHop的调试程序(被称之为HPHPd)被用来作为HipHop运行时期的键盘交互界面,它允许开发者可以尝试使用一些代码、紧系运行时期的解释器以及可以设置监视器或中断点。HPHPd现在仍被支持及使用。

HHVM
这是当前版本的HipHop(被称之为HHVM),被用以取代HPHPc以及HPHPi在产品的开发及发布,HHVM借由将 PHP 代码编译为字节码 ,使其可运行于虚拟机的环境,也可以利用客制的JIT在运行时期编译为机器代码。当前Facebook的PHP程序皆运行在HHVM上。

使用HipHop for PHP
HipHop for PHP是一个开放源代码的项目,可在GitHub获取,它是采用PHP许可证授权。ubuntu上已编译可直接运行的包已经可以在HipHop项目的apt程序库获取[6][7]。

于2012年5月,HipHop的wiki指出 当前已经支持PHP 5.3的多项特色[1]

HipHop于CentOS及Fedora上开发,当前在其他系统编译可能不能正常运行,虽然在未来可能会加入其他操作系统的支持,但是现在,HipHop仅能运行于64位架构的环境。

HipHop在运行PHP项目,有相当多的改进,也能减少存储器使用量[8]并增加对TBB的parallel_for的支持,以至于除了加速之外并显著的减少存储器使用量[9]。

另见
Project Zero
Phalanger (compiler)

HipHop for PHP相关推荐

  1. The HipHop Virtual Machine

    目前Facebook已将该HipHop虚拟机开源,源代码发布在GitHub上.关于该工具的技术原理在Facebook的开发者页面上有一篇详细的文章介绍,查看这里. 如果看不到的可以看下面的转载: We ...

  2. Facebook性能大提升的秘密:HipHop

    facebook / hiphop-php https://github.com/facebook/hiphop-php Facebook神秘的PHP项目HipHop for PHP终于揭开面纱.这个 ...

  3. Facebook大牛、HipHop作者赵海平加入阿里巴巴

    3月14日,阿里技术保障在其官方微博宣布Facebook的第一位中国工程师.HipHop作者赵海平即将加入阿里技术保障部.赵海平是北京大学1987级的学生,并于2007年3月加入正式加入Faceboo ...

  4. Facebook提升性能的一大法宝:HipHop

    之前我们谈过facebook的架构,今天在csdn上看到一篇文章,讲述了hiphop在facebook的重要作用,原文链接,转载原文如下: Facebook神秘的PHP项目HipHop for PHP ...

  5. PHP之父评价Facebook的HipHop项目:别当作银弹

    据<纽约时报>网站报道,读写网记者与PHP的创造者Rasmus Lerdorf联系,询问他对Facebook刚刚开源的PHP优化项目HipHop有何看法.Lerdorf在邮件中说,这是一个 ...

  6. HipHop算法:利用微博互动关系挖掘社交圈

    /* 版权声明:可以任意转载,转载时请务必标明文章原始出处和作者信息 .*/                  CopyMiddle: 张俊林 TimeStamp:2012年3 月 在微博环境下,如何 ...

  7. HipHop PHP HHVM资料收集

    百度百科 HipHop PHP实战(详解web运行模式) 百度 PHP7和HHVM的性能之争

  8. 快手用计算机说唱的叫什么,HIPHOP人物:“我们呢说唱,会在快手上爆炸!”

    00:16 "这啥?你他妈告诉我这是啥?" 第一次看到这视频,我的内心是这样的想法. 粗糙的快手式画质和劣质的手机式录音,不圆润的韵脚,让人不忍直视. 这就是前段时间小火一把的西双 ...

  9. php底层开发框架, yaf,swoole,hiphop

    php底层开发框架, yaf,swoole,hiphop这种 以加速为主要目的的,基于底层的技术框架流派 http://www.laruence.com http://www.swoole.com 本 ...

  10. hiphop 2.1 开发问题总结 原创-胡志广

    1.  Hhvm2.1 生成扩展文件方式 Hhvm2.1 的结构化变化比较大,idl的目录放到了$HPHP_HOME/hphp/system/idl下,并且他的格式已经换成了xxx.idl.json ...

最新文章

  1. 产品经理学PMP,有必要吗?
  2. 连贯的学习黑树(插入节点)
  3. 4条实用小建议,送给初入NLP领域的你
  4. 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波3 -幂律变换、伽马变换
  5. PICT实现组合测试用例
  6. 信息学奥赛一本通 1051:分段函数 | OpenJudge NOI 1.4 13
  7. 万恶的单线程!!怎样才能实现一个真正的多线程的php socket server啊!!!
  8. 微信公众号的开发 Senparc.Weixin.dll使用
  9. java开发编写基本的结构_【自学java笔记#第五天#】Java的基本程序设计结构
  10. Java基础视频教程
  11. 一个PHP的QRcode类,与大家分享
  12. 关于金融学和计量金融学的好书
  13. 嵌入式课程 之 陀螺仪传感器实验
  14. html基础学习笔记
  15. 2018-3-25至2018-8-9的日语笔记
  16. 【计算机基础】03-Word习题
  17. for await of使用
  18. C#版OPOS打印(基于北洋OPOS SDK二次开发包,支持EPSON和北洋、佳博、商祺等支持标准ESC/POS指令的POS打印机)
  19. 士成兄的面试经历(放弃5家offer终去了华为)
  20. 臣与匈奴交战多年,还从未见到过不战而屈人之兵的好事。

热门文章

  1. 最短路问题——(最短路径)
  2. 开放式办公室不利心理健康:噪音大且效率低
  3. 史上最全MOS管封装管脚外观解读,新手必读!
  4. 《穷查理宝典》精度步骤
  5. 场地通推出2.0 打造大学会务场地预定新平台
  6. Linux查看主机出厂日期,linux 生产常用命令
  7. js生日计算年龄_「周岁怎么算」【js】根据出生日期,计算周岁年龄 - seo实验室...
  8. 项目总结之论员工的自我修养
  9. [案例][激励]关于个人贡献与团队贡献的激励制度(结合IT开发考虑)
  10. 与阿里云整个生态体系共同成长,更快更好的为房地产行业客户提供高价值的服务。