设为首页 收藏本站
查看: 1459|回复: 0

[经验分享] PHP历史之4-不得不说细说的FB娇子---HHVM

[复制链接]

尚未签到

发表于 2018-12-13 11:43:27 | 显示全部楼层 |阅读模式
DSC0000.jpg

  HHVM安装使用教程-高效的PHP运行环境提升PHP性能9倍以上
  HHVM即HipHop Virtual Machine,目前是3.0版本,出自Facebook,它先将PHP和Hack程序编译为中间字节码,然后通过just-in-time (JIT)编译器将字节码动态翻译为x64机器代码,应用上了非常多的编译优化技术。
  JIT就是HHVM高效率的所在,所谓字节码:是一种人类无法阅读的代码,专门用来给编译器高效执行的。当HHVM首次加载项目时,它会将所有的PHP代码转换成字节码;字节码的生成是与平台无关的。
  机器码是一系列供CPU执行的指令。用过汇编的都应该清楚机器码,估计没人喜欢用汇编编程。通过编译器就可以把汇编转成机器码,然后供CPU处理。JIT(即时)编译器是指在运行时才会去编译字节码。字节码会存放在内存中,然后JIT编译器会根据需要加载并编译所涉的字节码。
  通过以上技术,HipHop和HHVM获得了性能的提升。据官方介绍,与PHP 5.2引擎+APC相比,HHVM可以处理的Web请求吞吐量增加了9倍,而内存消耗减少了5倍。实际上HHVM之前有朋友留言提起过它,亲自测试过后发现HHVM在提升PHP处理速度上非常有优势,非常适合大型的网站。
  最近,HHVM已经更新到了3.0版本,HHVM几乎已经完全支持PHP 5.5了,但还是有不少bug,所以不是所有应用程序都可以运行。因此,Facebook准备让最流行的20个开源PHP项目能够运行在HHVM上。第一个已经支持的项目就是Wordpress。不过对于国内的Discuz兼容还不太完美。
  本篇文章来自 deamwork 博主,为大家分享一下HHVM+Nginx+FastCGI建站环境搭建过程,有兴趣的朋友可以一同来体验一下HHVM强悍性能。想要了解更多的有关于服务器优化的方法,这里有:

  •   1、均衡:免费空间+便宜VPS和OpenResty,Ngx_lua,Redis搭建系统负载均衡环境
  •   2、缓存加速:用Redis缓存来给WordPress站点加速-适用于Apache和Nginx
  •   3、安全机制:WordPress加速防护技巧:多重CDN和Better WP Security强化安全
  HHVM安装使用教程-高效的PHP运行环境提升PHP性能9倍以上
  一、HHVM安装方法
  1、HHVM官网:

  •   1、官方网站:https://www.hhvm.com
  •   2、项目地址:https://github.com/facebook/hhvm
  2、服务器操作系统:Debian7 x64 ,搭建LNMH架构,安装HHVM并采用Fastcgi与Nginx结合。现在我将开始介绍如何快速安装HHVM并采用Fastcgi与Nginx相结合,以方便添加虚拟主机。
  3、我们这里选用的系统是debian,用debian有个好处添加完apt源以后可以快速安装HHVM。注意选择系统的时候一定要选择64位的系统不然无法安装。
  4、首先我们要先进行一些安装前的步骤: sudo apt-get update
DSC0001.gif

  5、接下来我们添加HHVM的apt源,并安装HHVM:
wget https://dl.hhvm.com/conf/hhvm.gpg.key  
sudo apt-key add hhvm.gpg.key
  
echo "deb https://dl.hhvm.com/debian wheezy main">> /etc/apt/sources.list
  
sudo apt-get update
  
sudo apt-get install -y hhvm
  6、如果是国内的主机请添加下面这个apt源,官方的apt源因为某些原因被Q了。
wget https://dl.hiphop-php.com/conf/hhvm.gpg.key  
sudo apt-key add hhvm.gpg.key
  
echo "deb https://dl.hiphop-php.com/debian wheezy main">> /etc/apt/sources.list
  
sudo apt-get update
  
sudo apt-get install -y hhvm
DSC0002.gif

  7、这个过程大概几分钟即可完成,会有Selecting Unpacking ,用时比较长
  8、看到以下界面说明HHVM安装成功。
DSC0003.gif

  二、安装Fastcgi方法
  1、接着我们运行这条命令安装Fastcgi ,执行以下命令:
sudo /usr/share/hhvm/install_fastcgi.sh #安装Fastcgi  
sudo update-rc.d hhvm defaults #添加到开机启动
  
sudo service hhvm restart #重启HHVM
DSC0004.gif

  2、hhvm5接着我们查看一下端口开启没有:netstat –anp
DSC0005.gif

  3、OK~当我们完成上面步骤的时候已经安装完成了HHVM并开启了Fastcgi模式。
  三、安装Nginx搭建LNMH
  1、接下来将介绍安装Nginx并与HHVM相结合搭建LNMH架构,并添加虚拟主机。
  2、首先我们先安装好Nginx,我们这里选用的是LinuxEye博客推出的lnmp一键包。
wget https://blog.linuxeye.com/lnmp.tar.gz  
#wget https://blog.linuxeye.com/lnmp-full.tar.gz # 包含源码(官方下载太慢)
  
tar xzf lnmp.tar.gz
  
cd lnmp
  
#如果需要修改目录(安装、数据存储、Nginx日志),请修改options.conf文件
  
./install.sh
  3、我们只用安装Nginx和memcached即可,其他不用安装,Mysql数据库我们后面选择用apt安装。 (点击放大)
DSC0006.gif

  4、当我们安装完成了Nginx后,备份lnmp目录下的vhost.sh文件,然后手动修改vhost.sh让nginx添加虚拟机时自带Fastcgi。找到下面这段:(大约在314行)
[ ! -d $web_install_dir/conf/vhost ] && mkdir $web_install_dir/conf/vhost  
cat > $web_install_dir/conf/vhost/$domain.conf  $web_install_dir/conf/vhost/$domain.conf

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-650916-1-1.html 上篇帖子: PHP实现循环队列(顺序结构) 下篇帖子: PHP使用flock实现文件加锁来防止多进程同时写入文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表