HHVM全稱爲 HipHop Virtual Machine,它是一個開源虛擬機,用來運行由 Hack(一種編程語言)和 PHP 開發應用。HHVM 在保證了 PHP 程序員最關注的高靈活性的要求下,經過使用最新的編譯方式來取得了非凡的性能。到目前爲止,相對於 PHP + APC (Alternative PHP Cache) ,HHVM 爲 FaceBook 在 HTTP 請求的吞吐量上提升了9倍的性能,在內存的佔用上,減小了5倍左右的內存佔用。php
同時,HHVM 也能夠與基於 FastCGI 的 Web 服務器(如 Nginx 或者 Apache )協同工做。html
在本教程中,咱們一塊兒來配置 Nginx/Apache web 服務器、 數據庫服務器 MariaDB 和 HHVM 。咱們將使用 Ubuntu 15.04 (64 位),由於 HHVM 只能運行在64位系統上。同時,該教程也適用於 Debian 和 Linux Mint。mysql
第一步: 安裝 Nginx 或者 Apache 服務器linux
一、首先,先進行一次系統的升級並更新軟件倉庫列表,命令以下nginx
# apt-get update && apt-get upgrade程序員
二、 正如我以前說的,HHVM 能和 Nginx 和 Apache 進行集成。因此,究竟使用哪一個服務器,這是你的自由,不過,咱們會教你如何安裝這兩個服務器。web
安裝 Nginxsql
咱們經過下面的命令安裝 Nginx/Apache 服務器數據庫
# apt-get install nginxapache
安裝 Apache
# apt-get install apache2
完成這一步,你能經過如下的連接看到 Nginx 或者 Apache 的默認頁面
localhost
或
IP-Address
第二步: 安裝和配置 MariaDB
三、 這一步,咱們將經過以下命令安裝 MariaDB,它是一個比 MySQL 性能更好的數據庫
# apt-get install mariadb-client mariadb-server
四、 在 MariaDB 成功安裝以後,你能夠啓動它,而且設置 root 密碼來保護數據庫:
# systemctl start mysql
# mysql_secure_installation
回答如下問題,只須要按下y或者 n而且回車。請確保你仔細的閱讀過說明。
Enter current password for root (enter for none) = press enter
Set root password? [Y/n] = y
Remove anonymous users[y/n] = y
Disallow root login remotely[y/n] = y
Remove test database and access to it [y/n] = y
Reload privileges tables now[y/n] = y
五、 在設置了密碼以後,你就能夠登陸 MariaDB 了。
# mysql -u root -p
第三步: 安裝 HHVM
六、 在此階段,咱們將安裝 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 鏈接 HHVM
七、 如今,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
重要: 若是你使用的是 Apache,這裏不須要進行配置。
八、 接下來,你須要使用 hhvm 來提供 php 的運行環境。
# /usr/bin/update-alternatives --install /usr/bin/php php /usr/bin/hhvm 60
以上步驟完成以後,你如今能夠啓動而且測試它了。
# systemctl start hhvm
第五步: 測試 HHVM 和 Nginx/Apache
九、 爲了確認 hhvm 是否工做,你須要在 nginx/apache 的文檔根目錄下創建 hello.php。
# nano /usr/share/nginx/html/hello.php [對於 Nginx]
或
# nano /var/www/html/hello.php [對於 Nginx 和 Apache]
在文件中添加以下代碼:
<?php
if (defined('HHVM_VERSION')) {
echo 'HHVM is working';
phpinfo();
} else {
echo 'HHVM is not working';
}
?>
而後訪問以下連接,確認本身可否看到 "hello world"
localhost/info.php
或
IP-Address/info.php
若是 「HHVM」 的頁面出現了,那就說明你成功了。
結論
以上的步驟都是很是簡單的,但願你能以爲這是一篇有用的教程.
免費領取兄弟連IT教育原創linux運維工程師視頻/細說linux教程,詳情諮詢官網客服:http://www.lampbrother.net/linux/
或者勾搭Q2430675018
歡迎加入linux交流羣 478068715