一般網站主機上裝的是 LAMP (Linux+Apache+Mysql+PHP),後來有越來越多人改裝 LNMP (Linux+Nginx+Mysql+PHP),不過自從 Facebook 優化了php 建立了 HipHop (HHVM),因為可顯著的增快 PHP 應用程式的速度提高效能、並節省主機資源,所以也流行用 HHVM 取代 PHP 了。以下就以 DigitalOcean 主機,建立 Ubuntu 14.04 環境來教學安裝。

安裝 Nginx

# sudo apt-get update
# sudo apt-get install -y unzip vim git-core curl wget build-essential python-software-properties
# sudo add-apt-repository -y ppa:nginx/stable
# sudo apt-get update
# sudo apt-get install -y nginx

 

安裝 HHVM

# wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -
# echo deb http://dl.hhvm.com/ubuntu trusty main | sudo tee /etc/apt/sources.list.d/hhvm.list
# sudo apt-get update
# sudo apt-get install -y hhvm

 

設定 FastCGI

# sudo /usr/share/hhvm/install_fastcgi.sh

 

重新啟動

# sudo /etc/init.d/nginx restart
# sudo update-rc.d hhvm defaults
# sudo service hhvm restart

1.第二行 update-rc.d 設定開機啟動 hhvm
2.網站的根目錄是在 /usr/share/nginx/html
3.hhvm 的定義檔是放在 /etc/nginx/hhvm.conf
4.Nginx 的定義檔是放在 /etc/nginx/sites-available/default,並請自行加上 index index.php index.html index.htm;
nginx-default

 

安裝 Mysql,並依提示新增 root 的密碼

# sudo apt-get install mysql-server

設定開機啟動:

# sudo chkconfig mysql on

若是沒有 chkconfig 可用,請改安裝 sysv-rc-conf 替代

# sudo apt-get install sysv-rc-conf
# sudo sysv-rc-conf mysql on

至於大家習慣的 phpmyadmin ,建議用 wget 下載方式解壓縮到目錄 /usr/share/nginx/html 下使用。

DigitalOcean 主機,安裝 HHVM、Nginx、Mysql 在 Ubuntu 14.04 上
標籤:                    

7 thoughts on “DigitalOcean 主機,安裝 HHVM、Nginx、Mysql 在 Ubuntu 14.04 上

  • 2014/09/04 在 00:31
    永久連結

    是試裝在 512 RAM Droplet 上嗎?
    很好奇,裝了之後效能怎樣?

    回覆
    • 2014/09/04 在 01:47
      永久連結

      是512MB沒錯,上面安裝的是wordpress,壓力測試數據如下:

      1.先以 350 clients, running 30 sec.
      Speed=1174 pages/min, 534392 bytes/sec.
      Requests: 587 susceed, 0 failed

      2.增加到 400 clients, running 30 sec.
      Speed=1284 pages/min, 523950 bytes/sec.
      Requests: 604 susceed, 38 failed.

      出現資料庫連線錯誤訊息,故調整最大連線數為500測試

      3.再增加到 500 clients, running 30 sec.
      Speed=1200 pages/min, 436963 bytes/sec.
      Requests: 560 susceed, 40 failed.

    • 2014/09/04 在 04:40
      永久連結

      請問你是用 a/b 測的嗎 ?
      另外請教還有下的指令是 ?
      我想用同樣的測式方法來和 Varnish 比較一下,謝謝。

發表迴響