效能是任何網站的關鍵,希望本指南能讓您走上正確的軌道,以最佳化您的網站以在您的社羣發展的同時執行。
目錄
主機託管
您擁有的伺服器是快速網站最重要的一步,整體效能從您的主機伺服器和硬體開始。
確保您擁有功能強大且功能強大的伺服器,例如 Apache,或者使用 Nginx,因為它非常高效,但任何可以執行 PHP 或 MySQL 的伺服器都應該沒問題。
如果您的社羣開始大幅增長,請將您的託管環境升級到虛擬專用伺服器或更好的專用伺服器,以便每天處理大量使用者和帖子。雖然可以在共享託管環境中執行 bbPress,並且對於小型社羣來說效果很好,但您的社羣發展得越多,您的站點就越慢,共享託管就越不是一個可行的選擇。
bbPress 和 WordPress 在豐富的託管環境中工作得最好。要為您的主機尋找推薦的解決方案,您可以檢視此特色 WordPress 主機列表。
操作碼快取
顯著提高效能的一種極好方法是在您的伺服器上安裝 Opcode 快取器。這可以透過快取來自先前請求的 PHP 操作碼來提高頁面載入和每秒請求數。
要安裝 Opcode 快取器,您需要聯絡您的託管服務提供商並要求他們為您安裝它,或者詢問他們是否有幫助您在伺服器上安裝它的指南。
請注意,在大多數情況下,您將無法在共享主機上安裝操作碼快取器,因為執行它需要大量記憶體。
以下是眾所周知的 Opcode 快取器列表:
物件快取
物件快取是快取複雜的 SQL 查詢,因此它們不會在頁面載入中多次執行。使用物件快取器將使用 WordPress 快取 API 快取任何內容,這將阻止 WordPress 快取到預設選項表,而是使用您安裝的任何物件快取後端。
然後,您需要選擇要使用的持久快取型別。您還可以使用其中一些操作碼快取器來進行物件快取。
也可以在您站點上的記憶體物件快取器中使用這些。
要使物件快取與 WordPress 一起使用,您需要安裝一個外掛,該外掛會將物件快取插入檔案新增到您的 WordPress 站點。有多個物件快取後端外掛會新增這個物件快取插入檔案,例如這個用於 APC 或這個用於 Memcached ,W3 Total Cache 也支援其中的大部分。
對於多伺服器設定,您可能需要考慮使用 Memcached 。
在共享伺服器上,您可以使用磁碟來儲存經常訪問的資料,但這可能會導致問題並實際上降低站點的速度。
頁面快取
頁面快取非常適合您的網站頁面、部落格文章和網站首頁,但由於論壇高度動態且使用者不斷更新,頁面快取實際上取決於您如何設定 bbPress 論壇。
如果您只允許使用者在登入時發帖,最好只為訪客使用者提供快取。如果您在外掛中找到設定快取重新整理的選項,請確保將其設定為較短的時間,例如大約一兩個小時。同樣在 bbPress 文章型別更新後,大多數 bbPress 相容快取外掛將重新整理快取,一切都應該再次新鮮。
如果您允許使用者在未註冊到您的站點的情況下發帖,頁面快取可能不是非常實用的解決方案。因此,建議從頁面快取中排除 bbPress 論壇頁面,以便您的論壇頁面不會向訪客使用者顯示過時的資訊。如果您的論壇非常活躍,您也可以考慮這樣做。
要禁止頁面快取中的論壇頁面,請進入您最喜歡的快取外掛並將這些字串新增到被拒絕的頁面/字串以快取設定。
如果您為您的論壇保留了論壇 root slug,您可以將此論壇字串用於大多數 bbPress 頁面,以及主題存檔的主題字串。
/forums/ /topics/
如果您在論壇設定中禁用了論壇 root slug,則可以使用這些字串集。
/forums/ /forum/ /topics/ /topic/ /reply/
如果您在論壇設定中設定了自定義 slug,您可以將我放置的字串替換為您的自定義字串。
為了獲得更好的頁面快取效能,可以允許使用操作碼快取器 Redis 。或 Memcached 將您的頁面儲存在記憶體中,但請記住,論壇往往有更多可快取的頁面,您可能需要密切關注網站上的 RAM 使用情況。
最佳化您的資料庫
這是可選的。
當刪除帖子、頻繁編輯帖子、將帖子標記為垃圾郵件時,您的資料庫將開始積累大量額外資料。即使每個部分單獨可能是幾個位元組的資料,一段時間後這些資料將開始累加並可能影響您的伺服器從資料庫表中檢索資訊的時間。透過清理和刪除您可能不需要的資料(例如佔用資料庫的垃圾郵件),最佳化資料庫會略微提高效能並減小資料庫大小。
雖然您可以使用 SQL 命令 OPTIMIZE TABLE 最佳化資料庫表,或者透過選擇每個表並從下拉選單中選擇最佳化表來執行最佳化 phpMyAdmin 中的資料庫表的功能,但您只需使用一個方便的 WordPress 外掛來最佳化您的資料庫。安裝 WP-DBManager 和 WP-Sweep 等外掛或任何其他替代品,將允許您最佳化大部分資料庫。
使用這些外掛之一最佳化資料庫時,您可能會看到刪除此類資料的選項。我只是要告訴您在我看來可能很重要的選項,為什麼您可能不執行它,以及為什麼執行一個選項可能有用。我還建議至少一兩個月最佳化一次資料庫。
在執行任何操作之前,建議您在執行任何選項之前執行資料庫備份,因為刪除資料是永久性的。
- 刪除修訂——雖然這可能很有用,尤其是當您瘋狂地編輯您的帖子時,bbPress 使用 WordPress 中的帖子修訂系統來進行話題和回覆編輯日誌記錄。如果您想在您的帖子中保留編輯日誌,其他外掛可能是自定義 CSS 外掛的修訂系統。如果您覺得可能會丟失一些重要的東西,請不要執行它。
- 刪除已刪除/已刪除的帖子- 如果您認為您刪除的任何型別的帖子(包括話題、回覆和部落格帖子)都應該被刪除而不會出現任何錯誤,您可以執行此程式。
- 刪除垃圾郵件- 此選項通常包括垃圾郵件評論。垃圾評論可以很好地擴大您的資料庫,它們通常每月至少會被 WordPress 自動刪除一次,但使用這些外掛可以縮短時間。
由於您可能有大量垃圾郵件話題和回覆,因此請確保如果要執行此功能,您最好刪除所有回覆和話題垃圾郵件。
- 轉到 WordPress 後端中的回覆 > 所有回覆或話題 > 所有話題。
- 單擊垃圾郵件操作連結,您可以檢視所選文章型別的所有垃圾郵件。
- 現在點選清空垃圾郵件按鈕刪除所有文章型別的垃圾郵件。
- 最佳化表- 在 WP-Sweep 和 WP-DBManger 中,這應該類似於 phpMyAdmin 最佳化資料庫表的方式。
核心程式碼改進
就像生活中的任何事情一樣,總是有更多的改進空間。 bbPress 2.6 版將啟動一些效能改進,任何能夠幫助測試並在 bbPress trac 中為現有 trac 票證建立補丁的人,或者只是為 bbPress 貢獻任何可能的程式碼改進建議的人都將不勝感激。
提高效能的其他方法
- 刪除不必要的物件、功能和外掛——只使用您需要的。
- 將資料解除安裝到外部源——使用 CDN 或附加伺服器來儲存靜態內容,可以大大減少頻寬、伺服器負載並加快您的網站速度。
- 縮小或組合您的網站 CSS 和 JS – 縮小 JavaScript 和 CSS 可以減少檔案的大小,而組合將最大限度地減少對多個檔案的請求。
- 啟用瀏覽器快取
- 頭部的 CSS 和頁尾的 JS
- 最佳化影象– 如果您的使用者使用 bbPress 外掛在您的論壇中上傳了大量 Gif 和 JPEG,您會注意到這些影象會減慢您的主題載入時間。啟用某種影象最佳化將減小這些影象的大小並使帶有影象的帖子載入速度更快。
- 使用延遲載入– 使用延遲載入外掛(如 Lazy Load 或 Rocket Lazy Load)將最小化請求並僅在使用者可見時顯示影象。
- 使用 Gzip 壓縮
報告拼寫錯誤
以下文字將傳送給我們的編輯: