github上面fork了一个老外的脚本,修改了一些bug和功能做的分支版本。支持操作系统ubuntu 12.04,别的系统暂时不支持。
安装方法:
$sudo su -
#apt-get install git-core
#git clone git://github.com/xianglei/easy-hiphop.git
#cd easy-hiphop/hiphop-php
#chmod +x install-no-hhvm.sh
#./install-no-hhvm.sh
install-no-hhvm是不带php vm的版本。可正确安装,install.sh带php vm,但是可能无法正确安装,建议安装不带虚拟机的版本。
安装完成后可执行文件在/home/dev/hiphop-php/src/hphp/hphp,脚本会创建一个链接文件到/usr/bin。所以,装好了直接敲hphp就可以用。如果出现HPHP_HOME未设置的错误,请执行
#source /etc/profile
或者
#export HPHP_HOME=/home/dev/hiphop-php
简单使用说明。
编译单个php文件。
#hphp --keep-tempdir=1 --log=4 test.php
编译一个目录
#hphp --keep-tempdir=1 --log=3 --input-dir=/path/to/your/php/source
编译文件到/tmp文件夹下找。
运行/tmp/hphp_xxxxxx/program -m server -p 8080
然后访问服务器的8080端口,url要输入原文件名。比如你编译单个test.php,需要在url里指定
http://localhost:8080/test.php
编译整个目录,hiphop不能为你指定默认访问文件,所以,即使你是index.php,url里面也要写上,当然也可以用指定默认首页的server参数方式启动。参看facebook wiki。
http://localhost:8080/index.php
hphp --help可以查看全部编译参数说明。
/tmp/hphp_xxxxxx/program --help可以查看全部启动选项。
附一个性能测试结果,ab访问默认url为nginx+php5.3,8080端口为hiphop编译后。
测试环境:ubuntu 12.04 in VirtualBox,内存1G,CPU*2
<?php
echo rand(0,10000);
?>
nginx+php:
Benchmarking localhost (be patient)
Completed 10000 requests
Completed 20000 requests
Completed 30000 requests
Completed 40000 requests
Completed 50000 requests
Completed 60000 requests
Completed 70000 requests
Completed 80000 requests
Completed 90000 requests
Completed 100000 requests
Finished 100000 requests

Server Software:                nginx/1.1.19
Server Hostname:                localhost
Server Port:                        80

Document Path:                    /easyhadoop/test.php
Document Length:                4 bytes

Concurrency Level:            200
Time taken for tests:     48.693 seconds
Complete requests:            100000
Failed requests:                10169
     (Connect: 0, Receive: 0, Length: 10169, Exceptions: 0)
Write errors:                     0
Non-2xx responses:            3
Total transferred:            16289226 bytes
HTML transferred:             389247 bytes
Requests per second:        2053.68 [#/sec] (mean)
Time per request:             97.386 [ms] (mean)
Time per request:             0.487 [ms] (mean, across all concurrent requests)
Transfer rate:                    326.69 [Kbytes/sec] received

Connection Times (ms)
                            min    mean[+/-sd] median     max
Connect:                0        1     1.7            0            37
Processing:         9     94 217.0         61     13281
Waiting:                8     94 217.0         61     13281
Total:                 42     95 217.1         62     13297

-------------------------------------
HipHop:
Benchmarking localhost (be patient)
Completed 10000 requests
Completed 20000 requests
Completed 30000 requests
Completed 40000 requests
Completed 50000 requests
Completed 60000 requests
Completed 70000 requests
Completed 80000 requests
Completed 90000 requests
Completed 100000 requests
Finished 100000 requests

Server Software:                
Server Hostname:                localhost
Server Port:                        8080

Document Path:                    /test.php
Document Length:                4 bytes

Concurrency Level:            200
Time taken for tests:     26.778 seconds
Complete requests:            100000
Failed requests:                10129
     (Connect: 0, Receive: 0, Length: 10129, Exceptions: 0)
Write errors:                     0
Total transferred:            10188711 bytes
HTML transferred:             388711 bytes
Requests per second:        3734.36 [#/sec] (mean)
Time per request:             53.557 [ms] (mean)
Time per request:             0.268 [ms] (mean, across all concurrent requests)
Transfer rate:                    371.57 [Kbytes/sec] received

Connection Times (ms)
                            min    mean[+/-sd] median     max
Connect:                0     16 154.5            0     15032
Processing:        10     36    65.5         35     13901
Waiting:                7     35    65.5         34     13900
Total:                 28     52 176.0         35     15066

均是100000个request,200个concurrency。试过开到500个concurrency,nginx直接挂了。hiphop还能跑。
nginx 4进程+php4进程ab测试处理请求2000个每秒,响应时间0.48秒。
hiphop 单进程,ab测试处理请求3700个每秒,响应时间0.26秒。
无论是请求数还是响应时间都大大提高。
运行参数可参看facebook官方wiki
https://github.com/facebook/hiphop-php/wiki/Runtime-options

easy-hiphop一键安装hiphop脚本相关推荐

  1. centos6一键安装vsftpd脚本

    centos6一键安装vsftpd脚本 手动安装vsftpd参考教程:Centos下安装Vsftpd的图文教程 vsftpd脚本功能: 1.安装 (命令执行:sh xxx.sh)2.添加ftp用户 ( ...

  2. 【Linux】Aria2 一键安装管理脚本 BT\PT一键安装包

    项目地址 https://github.com/P3TERX/aria2.sh 系统要求 CentOS 6+ / Debian 6+ / Ubuntu 14.04+ 下载安装 执行下面的代码下载并运行 ...

  3. Centos Denyhosts 一键安装配置脚本

    Centos Denyhosts 一键安装配置脚本 一键安装denyhosts脚本并配置为常用配置.放置Linux服务器被暴力破解 由于不能上传tar文件.所以改为zip压缩. 将附件的zip压缩包解 ...

  4. s14.一键安装haproxy脚本

    一键安装haproxy脚本 root@ubuntu1804:~# cat install_haproxy.sh #!/bin/bash # #***************************** ...

  5. s15.一键安装java脚本

    一键安装java脚本 #安装java8 root@ubuntu1804:~# cat install_jdk_8.sh #!/bin/bash # #************************* ...

  6. 一键安装lamp脚本--初级版

    #!/bin/bash #write by zhang_pc #at 2015.07.21 #apache2.2.27 mysql5.1 php5.4 #安装说明,由于网速原因,就不下载了,执行脚本前 ...

  7. linux一键安装rdp脚本,linux使用一键安装远程桌面环境/RDP脚本遇到问题与解决

    老左前几天有在"Linux 系统一键安装远程桌面环境/RDP 支持CentOS/Debian/Ubuntu"文章中介绍到网友分享的一键安装桌面环境的方法,当时这篇文章的测试服务器是 ...

  8. 一键安装LAMP脚本

    一键安装LAMP架构 #!/bin/bash #auto install LAMP #by 2017-10-11 #auto lijunmin#Httpd define path variable(定 ...

  9. 一键安装lnmp脚本(包括软件版本)

    直接上脚本:附件也包含脚本 #!/bin/bash yum -y install make apr* autoconf automake curl-devel gcc gcc-c++ zlib-dev ...

  10. LNMP一键安装shell脚本

    前段时间维护服务器,需要安装LNMP环境,所以就整理了一下,做为脚本,记录下来. #!/bin/sh #Copyright(c) 2010-2015 redapple (16325975@qq.com ...

最新文章

  1. 关于Hexo6.0搭建个人博客(github+Google-收录篇)
  2. 【数学建模】非线性规划模型与01规划模型(最优化)
  3. 多线程访问全局变量和局部变量
  4. Windows系统IntelliJ IDEA安装配置
  5. 转jmeter --JDBC请求
  6. 大江大海 —— 淮河、澜沧江(湄公河)
  7. 网络摄像头ip php,C#实现IP摄像头的方法
  8. FileZilla中文乱码解决方法
  9. 涉密计算机用户密码操作规程,涉密计算机管理设置密码
  10. 微信公众号之简单使用
  11. HTML基础常识问答(一)
  12. 伤心----------绝望
  13. 面试心得与总结---BAT、网易、蘑菇街
  14. 横摆角速度的仿真模型建立
  15. background:rgba()
  16. 记录:d3实现刻度尺
  17. 对1976年Diffie和Hellman的文章《New Direction in Cryptography》的中文翻译
  18. unity3D 使用rigidbody.AddForce(movement)
  19. 2020年Java语言发展现状
  20. windows下的python安装scrapy

热门文章

  1. eclipse左边工程列表不见了,怎么调出来
  2. 第二次冲刺站立会议10
  3. Jquery如何操作Table的某一个td
  4. 1.4.3 Arithmetic Progressions
  5. 【转载】完全手册 Flex 3.0 RIA开发详解(光盘内容)(书下载以及书的源代码下载)...
  6. openapi and light-4j
  7. Linux系统学习之文件管理
  8. 认识文本和文本文件 字符流操作的是文本文件
  9. 写代码如坐禅:你是哪一类程序员
  10. ERP必须基于企业流程管理