如果你準備做一個網站,你的版面,欄目都考慮好了,那麼你應該考慮到網站的性能問題,這不僅是給用户良好的體驗感,在 seo 的範圍內,更是必不可少的一部分。當然市面上性能不錯的源碼非常多,像 dedecms 、帝國 cms 、 WordPress 等等。今天專職講下 WordPress 的優化及運行等相關問題。

WordPress 的好是有目可睹的,它給用户提供出色的用户體驗,並給優化人員確保網站的性能及網站的優化可再擴展化的功能。讓我們來看看如何優化 WordPress 網站,讓網站能提高更優秀的性能。

MySQL

查詢緩存是你最好證明 MySQL 是一個可擴展的關係數據存儲,沒有任何理由 WordPress 為什麼不能在未來幾年內繼續努力。

你會想,為您的網站以確保啓用查詢緩存和執行。這將確保 MySQL 正在做盡可能少的工作,更重要的事情比冗餘查詢騰出資源。

您還需要確保您使用工具像 mysqltuner 或相似的,以確保你的表性能 (緩衝等) 是最佳的。交換引擎 InnoDB 的,現在有支持全文搜索,推薦用於高流量的網站。你不會危及本地 WordPress 的搜索質量。我建議 Percona 的分佈,尤其是如果 MySQL 的功能,如分片,讀副本等,允許其規模隨着需求的增長。

MySQL 的數據存儲區是不是一個瓶頸,需要分析你的主題和插件生成的查詢優化 (減少響應時間),減少其數量,通過重構代碼或不同的緩存技術。

請記住,默認情況下,使用 WordPress 的瞬態問題緩存像一個耗時的 API 請求 (API 請求變得昂貴,因為它們阻止執行,同時等待處理響應從第三方) 移動,並把它放到數據庫 (wp_options 表) 。這也許不是一件壞事,如果這個數據沒有被序列化並存儲在同一表中的其他各種設置在 WordPress 。

PHP

PHP 是緩慢的。這不是 WordPress 的故障,也不是任何人的過錯,技術不斷向前發展。我們該怎麼辦呢? 使用 NewRelic 的跟蹤優化可以得到一個經驗:

• 較大的內存使用情況,更大的執行時間。

• 利用 PHP 的自動加載,以減少內存使用。

使用記憶和儘可能避免環路,以減少執行時間和內存使用情況。

避免打開比必要更多的文件,磁盤和內存的使用,以減少呼叫。

使用需要,而不是 include_once 和 require_once 。

操作碼緩存

APC 是一個自由,開放和強大的框架用於緩存和優化 PHP 中間代碼。這意味着,當添加到您的 Web 服務器,可以實現顯着的速度提升 (尤其是具有良好的代碼) 。 APC 保持解釋 (可執行文件) 版本的代碼在內存中,因此,它的請求沒有被重新解釋。

APC 還提供對象存儲,使存儲在內存中創建的對象隔壁腳本需要他們。這個級別的緩存,唯一的缺點就是它的地方你有各自的應用服務器。這意味着每台服務器上重建對象緩存 (浪費 CPU 時間),而且更重要的是,清除的對象是棘手的。

數據庫和架構優化後,可以進行微調你的 WordPress 安裝。

這裏有一些任務可以完成,以確保您以峯值性能運行:

插件

這可能會明顯被發現的,但它是往往被忽視的東西。請確保您的 WordPress 插件是最新的。開發人員總是在尋找方法來提高他們的插件,這些方法之一是他們與每一個版本的代碼以提高性能。這是一個非常簡單的方式,以確保你的插件始終運行最新版本的。

應禁用未使用的插件,讓出他們不使用寶貴的資源,加載了不必要的代碼。這不僅節省空間。在服務器上,這些沒有使用的插件會使你的網站速度很慢,有必要應該更新到最新版本、下載補丁或不再不再支持插件代碼以保護漏洞不被利用。

使用 WordPress 的緩存

最有名的 WordPress 的緩存工具是 W3 的總緩存,但也有其他。這些緩存插件加快您的網站,讓更多的用户重新訪問您的網站從而保護到訪問者用户利益。

瀏覽器緩存

瀏覽器高速緩存可以幫助減少服務器負載限制每頁的請求數量。例如,通過設置正確的文件頭不改變的文件 (靜態文件,如圖片,CSS,Java 等) 的瀏覽器然後將這些文件緩存在用户的計算機上。這種技術可以讓瀏覽器進行檢查,看文件是否已經改變,而不是簡單地要求他們。其結果是,您的 Web 服務器可以更多的出現 304 回應,而不是 200 響應,要求要發送的文件。

看看到 HTTP 緩存控制和 Expires 頭,以及實體標籤獲取更多信息。

CDN

使用 CDN,可以讓你存儲的圖像和文字,讓訪問者訪問過後的內容從頁保存在第三方羣集服務器上,從而加快網頁下載時間。

小工具

可疑的所有部件 (或側邊欄內容),將強制用户輪流查詢 DNS 服務器。例如用第三方工具將連結到各種各樣的網站,這可能會延遲加載,直到信息傳遞給用户,這明顯讓你的信息在網絡轉了好幾手,讓用户直接感受到你網站的速度真的慢了。

此外,如果你的主題是使用自定義部件繪製最近的評論文章。如果這是不正確處理,它會查詢數據庫,每加一次查詢將大大增加服務器的負擔。

如果您使用的是大量的 Widgets,是一個好主意,將使用 WP 的 Widget 緩存插件 (除了標準緩存),以減少其輸出的處理時間。

通過將盡可能多的這些變化,並儘可能微調的東西可以大大增加你的 WordPress 加載時間,讓您的訪客將在網站上有更好的體驗。