在 Ubuntu 上配置高性能的 HHVM 环境
2025-10-31 05:00:08阅读量:1 字体:大 中 小
HHVM全称为 HipHop virtual Machine,它是一个开源虚拟机,用来运行由 Hack(一种编程语言)和 PHP 开发应用。HHVM 在保证了 PHP 程序员最关注的高灵活性的要求下,通过使用最新的编译方式来取得了非凡的性能。到目前为止,相对于 PHP + APC (Alternative PHP Cache) ,HHVM 为 FaceBook 在 HTTP 请求的吞吐量上提高了9倍的性能,在内存的占用上,减少了5倍左右的内存占用。
同时,HHVM 也可以与基于 FastCGI 的 Web 服务器(如 Nginx 或者 Apache )协同工作。

安装 HHVM,Nginx和 Apache 还有 MariaDB
在本教程中,我们一起来配置 Nginx/Apache web 服务器、 数据库服务器 MariaDB 和 HHVM 。我们将使用 Ubuntu 15.04 (64 位),因为 HHVM 只能运行在64位系统上。同时,该教程也适用于 Debian 和 Linux Mint。
第一步: 安装 Nginx 或者 Apache 服务器1、首先,先进行一次系统的升级并更新软件仓库列表,命令如下
# apt-get update && apt-get upgrade系统升级
2、 正如我之前说的,HHVM 能和 Nginx 和 Apache 进行集成。所以,究竟使用哪个服务器,这是你的自由,不过,我们会教你如何安装这两个服务器。
安装 Nginx
我们通过下面的命令安装 Nginx/Apache 服务器
# apt-get install nginx安装 Nginx 服务器
安装 Apache
# apt-get install apache2安装 Apache 服务器
完成这一步,你能通过以下的链接看到 Nginx 或者 Apache 的默认页面
http://localhost或http://IP-AddressNginx 默认页面
Apache 默认页面
第二步: 安装和配置 MariaDB3、 这一步,我们将通过如下命令安装 MariaDB,它是一个比 MySQL 性能更好的数据库
# apt-get install mariadb-client mariadb-server安装 MariaDB
4、 在 MariaDB 成功安装之后,你可以启动它,并且设置 root 密码来保护数据库:
# systemctl start mysql# mysql_secure_installation回答以下问题,只需要按下y或者 n并且回车。请确保你仔细的阅读过说明。
Enter current password for root (enter for none) = press enterSet root password [Y/n] = yRemove anonymous users[y/n] = yDisallow root login remotely[y/n] = yRemove test database and access to it [y/n] = yReload privileges tables now[y/n] = y5、 在设置了密码之后,你就可以登录 MariaDB 了。
# mysql -u root -p第三步: 安装 HHVM6、 在此阶段,我们将安装 HHVM。我们需要添加 HHVM 的仓库到你的sources.list文件中,然后更新软件列表。
# wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | apt-key add -# echo deb http://dl.hhvm.com/ubuntu DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list# apt-get update重要:不要忘记用你的 Ubuntu 发行版代号替换上述的 DISTRIBUTION_VERSION (比如:lucid, precise, trusty) 或者是 Debian 的 jessie 或者 wheezy。在 Linux Mint 中也是一样的,不过只支持 petra。
添加了 HHVM 仓库之后,你就可以轻松安装了。
# apt-get install -y hhvm安装之后,就可以启动它,但是它并没有做到开机启动。可以用如下命令做到开机启动。
# update-rc.d hhvm defaults第四步: 配置 Nginx/Apache 连接 HHVM7、 现在,nginx/apache 和 HHVM 都已经安装完成了,并且都独立运行起来了,所以我们需要对它们进行设置,来让它们互相关联。这个关键的步骤,就是需要告知 nginx/apache 将所有的 php 文件,都交给 HHVM 进行处理。
假如你用了 Nginx,请按照如下步骤:
nginx 的配置文件在 /etc/nginx/sites-available/default, 并且这些配置文件会在 /usr/share/nginx/html 中寻找文件执行,不过,它不知道如何处理 PHP。
为了确保 Nginx 可以连接 HHVM,我们需要执行所带的如下脚本。它可以帮助我们正确的配置 Nginx,将 hhvm.conf 放到 上面提到的配置文件 nginx.conf 的头部。
这个脚本可以确保 Nginx 可以对 .hh 和 .php 的做正确的处理,并且将它们通过 fastcgi 发送给 HHVM。
# /usr/share/hhvm/install_fastcgi.sh配置 Nginx、HHVM
重要: 假如你使用的是 Apache,这里不需要进行配置。
8、 接下来,你需要使用 hhvm 来提供 php 的运行环境。
# /usr/bin/update-alternatives --install /usr/bin/php php /usr/bin/hhvm 60以上步骤完成之后,你现在可以启动并且测试它了。
# systemctl start hhvm第五步: 测试 HHVM 和 Nginx/Apache9、 为了确认 hhvm 是否工作,你需要在 nginx/apache 的文档根目录下建立 hello.php。
# nano /usr/share/nginx/html/hello.php [对于 Nginx]或# nano /var/www/html/hello.php [对于 Nginx 和 Apache]在文件中添加如下代码:
< phpif (defined(’HHVM_VERSION’)) {echo ’HHVM is working’;phpinfo();} else {echo ’HHVM is not working’;} >然后访问如下链接,确认自己能否看到 “hello world”
http://localhost/info.php或http://IP-Address/info.phpHHVM 页面
假如 “HHVM” 的页面出现了,那就说明你成功了。
结论以上的步骤都是非常简单的,希望你能觉得这是一篇有用的教程,假如你在以上的步骤中遇到了问题,给我们留一个评论,我们将全力解决。
免责声明:
本文《在 Ubuntu 上配置高性能的 HHVM 环境》版权归原作者所有,内容不代表本站立场!
如本文内容影响到您的合法权益(含文章中内容、图片等),请及时联系本站,我们会及时删除处理。
推荐阅读

什么是 Aptos ?2025年十大Aptos生态系加密项目与dApps介绍
目录什么是 Aptos (APT) 以及其如何运作?Aptos 成为 2025 年成长最快的 Layer-1 区块链之一2025 年最值得关注的 10 个顶级 Aptos dApps 和项目1.Aav...
阅读: 275

盘前市场是什么?如何运作?对代币启动影响分析
目录盘前市场是什么?如何运作?盘前市场的演进历程盘前市场对代币启动的影响正面影响负面影响与挑战对代币启动策略的根本改变盘前交易和盘前合约逐渐成为热门代币启动的重要环节。tNi北海亭 - 区块链数字货币...
阅读: 268

Ondo Global Markets在以太坊上线:架构、资格要求、费用和主要风险介绍
目录项目概述它解决了什么问题?产品架构与合规性设计资产覆盖和网络流动性和定价连接定价和风险控制如何参与和费用生态系统伙伴关系和路线图常问问题关键要点Ondo Global Markets 在以太坊上线...
阅读: 261

OE Web3钱包忘记密码或助记词怎么办?能找回吗?还有救吗?
目录为什么要备份Web3 钱包助记词和私钥?助记词忘了怎么办?导入钱包助记词或私钥重置钱包密码助记词和私钥为什么如此重要?助记词和私钥备份注意事项常见问题1. 为什么Web3 钱包平台无法帮用户找回密...
阅读: 239

如何一键降低TRON转账手续费?imKey钱包一键租赁能量转账USDT教程
目录imKey用户如何一键操作租赁能量转账USDT?准备工作操作步骤常见问题如何确保账户能正常支付 TRX 租赁能量?为什么能量租赁交易失败?能量到账延迟怎么办?在 TRON 网络上,每次转账 TRC...
阅读: 245

什么是Ledger Stax 钱包?功能有哪些?使用步骤教学
目录什么是Ledger Stax 硬件钱包?Ledger Stax 的主要功能有哪些?Ledger Stax 上的「Clear Signing」是什么?如何开始使用Ledger Stax 钱包应用程序...
阅读: 239

OE DEX使用Web3钱包交易失败的原因是什么?DEX交易失败原因及处理方法
目录无法发起交易1. 交易地址或代币可能存在风险2. 无流动性3. 手续费不足4.钱包余额不足5. SOL 租金不足交易失败1. 交易处于执行中的状态2. 滑点设置低交易失败后还需要支付网络费用吗?在...
阅读: 255

OE钱包如何备份助记词或私钥 ?OE钱包备份助记词或私钥的操作方式
目录钱包备份方式一:云端备份(通过iCloud / Google Drive /Huawei Cloud 备份钱包)方式二:物理方式私钥备份助记词和私钥是找回Web3 钱包的唯一凭证。如果未备份且遗忘...
阅读: 254

okx钱包助记词和私钥是什么?为何重要?忘记后如何找回?
目录私钥是什么助记词是什么如何在OKX Wallet 使用私钥和助记词为什么要备份 Web3 钱包助记词和私钥如何导入钱包助记词或私钥重置钱包密码助记词和私钥为什么如此重要助记词和私钥备份注意事项常见...
阅读: 235

OE钱包转账手续费是什么?如果不足怎么办?如何补充?
目录什么是转账手续费提币需要多少手续费转账时页面提示手续费不足”如何补充手续费方式一:钱包收币方式二:交易所提币常见问题Web3 钱包转账所消耗的网络费用是用对应网络的主网币来支付的,例如...
阅读: 239
猜你喜欢
新手注册欧易OKX账号攻略(安全下载安装注册入门指南)
2025-10-29

2025全球TOP20虚拟货币交易所排名评价:一文教你交易所怎么选
2025-10-29

币圈十大加密货币交易所app排行榜介绍(2025年最新排名)
2025-10-29

国内正规合法的虚拟币平台有哪些?在哪下载安装正规合法的虚拟币平台?
2025-10-29

虚拟币账户在哪申请注册?虚拟币平台简介及创建账户教学2025版
2025-10-29

DeriW是什么交易所?一文详解零费率合约交易所DeriW
2025-10-29

在OKX买币的限额是多少?欧亿交易所买币每日最高/最低限额介绍
2025-10-29

如何在殴易C2C交易中使用拉黑功能?(拉黑/解除拉黑操作步骤)
2025-10-29

币圈交易所的交易量怎么查看?查看币圈各平台交易量的常用方法
2025-10-29
