小內存 VPS 優化建議 (LNMP+WordPress 環境)

對於 VPS 來說,內存應該是最寶貴的資源之一了,內存越小价格也就越便宜,普通用戶也越能接受。因此如何有效利用有限的內存資源,使 VPS 的利用率最大化,能承載更高的併發數及負載,這應該是所有 VPS 用戶都在思考的問題。下面,就結合我在維護本站時候獲取的一些經驗給出一些相應的建議,當然這份優化建議主要是針對 Linux 環境及 WordPress 用戶。

- 穩定的 VPS 服務器

所有的上層內容都依託於穩定的硬件支持,所以如果你購買的 VPS 主機線路巨慢、三天兩頭掛掉、或者有時 VPS 母機 IO 負載超高,那麼,就算再怎麼優化也沒有任何用處,你整天干的事情就是發 Ticket 找客服解決問題。所以,選購一臺穩定快速的 VPS 主機這是最基礎的要求。

- 輕量級 Web Server

Apache 已經變得越來越臃腫了,內存開銷非常大,所以個人建議用輕量級的 Nginx 服務器,而對於 WordPress 來說 nginx 已經完全夠用了。這裏是適用於 WordPress 3 的 nginx rewirte 規則,包括 Permalinks rewrite 及 WP-super-cache rewrite 規則。

而 PHP 方面則建議用 PHP-FPM , PHP-FPM 已經包含在 PHP 5.3.3 中,對於小內存 VPS 用戶建議用靜態進程方式,也就是固定幾個進程,同時建議少開幾個進程,比如 4-6 個左右。

Ubuntu 上可以用以下命令直接安裝 nginx , php-fpm , mysql 環境

sudo apt-get install nginx php5 php5-dev php5-fpm php5-mysql mysql-server make

- 充分利用多核

Nginx 在 Linux 上有一個 worker_cpu_affinity 參數,可以爲每個工作進程綁定到不同的 CPU ,所以如果你的 VPS 具有多核的話,那麼可以充分利用各 CPU 。比如如果有 4 個 CPU,那麼可以進行如下配置:

worker_processes 4;
worker_cpu_affinity 0001 0010 0100 1000;

最後你可以查看一下 CPU 狀態,測試方法是輸入 top 命令並按 1 。

- MySQL 優化

關掉InnoDB:如果 VPS 只是用來跑 Worpdress 的話,用 MyISAM 存儲引擎就足夠了。你只需在my.cnf加入一行 skip-innodb 就可以把 InnoDB 存儲引擎給關掉了。這樣也可以省下一定數量的內存。

- 緩存,再緩存

  • 啓用 PHP 緩存加速模塊 eAccelerator : 大家都知道, PHP 是動態腳本語言,每次訪問都會重新編譯執行,而 eAccelerator 則可以緩存編譯過的部分 PHP 文件,從而起到提高 PHP 腳本性能及降低系統負載的效果。但需要注意的是,在 nginx + PHP-FPM 環境下, eAccelerator 無法進行內存共享,也就是說 PHP-FPM 的每個進程除了本身所需要的內存開銷外,還會加上 eaccelerator.shm_size 參數中設定的值,所以我們在設置時儘量減小 eaccelerator.shm_size 的值,比如設置爲 8 MB ,這樣最多可以緩存 50 多個 php 文件,雖然少了點,但對於 WordPress 來說基本足夠了,這也算是一種節約資源及增加性能的折中方案。另外,啓用 eaccelerator 後對於訪問速度確實有顯著提高。
  • WordPress 頁面緩存:建議用 Wp-super-cache 插件,這個插件的 nginx rewrite 規則之前已經有提到過。Wp-super-cache 可以起到網頁靜態化緩存的效果,可以進一步除低系統負載。
  • 數據庫查詢緩存 : 爲了進一步減少數據庫查詢次數,就需要用此類插件,這類插件很多,我在用的是 DB Cache Reloaded 。

- WordPress 模版及插件

減少不必要插件以及用簡潔的模版,不要放置大量的圖片,因爲一旦圖片一多就會產生更多的 http 連接請求數,導致頁載載入速度變慢,同時也消耗更多的帶寬,畢竟帶寬也是 VPS 的重要資源之一。

End

水平有限,如有錯誤,敬請指正。如果你有更好的優化方案,也請在留言中分享,謝謝!

# 最後介紹一些在線測試及優化工具:

  • Just-Ping : 可以同時獲取世界各地幾十個位置 ping 你主機的值,從而可以判斷 VPS 主機的線路質量。
  • Pingdom : 全頁面載入測試工具,可測試訪問某網頁共發起了多少請求及每個請求的耗時,從而可以判斷哪些網頁元素比較影響載入速度,對進一步優化提供幫助。
  • 測速寶:整體頁面載入及訪問速度測試工具,可以讓國內各地的網友幫你測試。你可以通過這來裏測試本站的載入速度,這裏是詳細的報告
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章