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. python 终端执行命令
  2. 安装mysql5.15.7版本_YUM方法安装mysql5.7版本
  3. Ubuntu14-04安装redis和php5-redis扩展
  4. 1_数据分析—数据载入、导出和探索
  5. GaussDB Hash表分布列选择原则及数据倾斜检测
  6. 【Unity游戏开发】不接SDK也能在游戏内拉起加QQ群操作?
  7. C语言既有高级语言又有低级语言的特点,但为什么它不是低级语言呢?
  8. ArcGIS最详细的地图制作教程
  9. [拉格朗日乘数法 二分] BZOJ 2876 [Noi2012]骑行川藏
  10. NMOS和PMOS管 电流方向和应用电路
  11. Heckman两步法 | 样本选择模型 处理效应模型
  12. JAVA面试算法小记
  13. Java和Python,哪个更适合开发AI人工智能?
  14. 用模拟退火算法求解TSP问题
  15. python爬取分析超级大乐透历史开奖数据
  16. vue-cli3环境变量之打包文件没有hash值
  17. highcharts legend图例禁止点击事件以及鼠标移入样式保持不变
  18. 使用PWM控制来实现电压的变化控制
  19. 找一个陪你聊天的人,很重要
  20. 第三课:电通量和高斯定律

热门文章

  1. 域名怎么卖:玩好社群就可以!
  2. Activity 边边角角
  3. 取汉字的拼音简码.如果是其它字符,则原样返回(2010)
  4. outlook搜索栏跑到上面去了_都市农园 周末去谈一场恋爱,顺便买回一座花园
  5. 三菱伺服器J3、J4、JE中文调试软件
  6. 20172303 20172322 2017-2018-2 暑假作业 结对编程项目-舒尔特方格(增补:计时器的加入与页面优化)...
  7. 算法之统计一篇文章里不同单词的个数
  8. R语言编程入门--replicate()函数比较有意思!
  9. 25k成功入职京东:拿到京东软件测试岗位offer经验分享
  10. 圆瓶、扁瓶、三色瓶砖、数百品牌分选,弓叶科技的分选神技