[WordPress] 破解迷思 – 外掛多網站是不是會比較慢?

本篇文章更新時間:2019/02/16
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知。
一介資男的 LINE 社群開站囉!歡迎入群聊聊~


這個觀念還真是深植很多人心,要解釋起來雖不容易,但可以從幾個方向去理解。

首先,程式是一次從頭(第一行)到尾(最後一行)執行完後會給你一個結果。

WordPress 把架構開放成「接受」你可以在執行的過程中安插自己的程式,而這份「接受」就是以下模組:

  1. 外掛模組
  2. 主題模組

注意:順序在這邊是外掛先而後主題沒錯,但在同樣主題與外掛參數下並不會因為順序而有影響這個整體執行速度。

誤解常常是因為很單純認為「我主題是必要的而且只啟動一個,外掛好多個,所以外掛減少就可以快一點了」,這是一個不能說錯的解讀,但有觀念需要釐清。

的確減少一段程式碼是會快一點執行到最後一行,但你的需求是不是也因為少了這段而被限縮?某個功能不見真的能接受嗎?

Oops! 發現關鍵了嗎? 關鍵不是去檢討外掛多不多,而是少一個外掛的「功能」你能不能接受。

這樣的推導是想表達不論誰寫的那段都會讓執行慢一點,單純比較外掛數量是不能作為「網站慢」的依據,以及如果真的要追究可能要去探討這段程式碼的寫法好不好,有沒有顧慮效能等等問題。

反過來問,如果「那些需求」的程式碼通通移植到主題上,整個後台都沒有外掛了,你覺得會網站會明顯變快嗎?聰明如你看到這邊一定知道答案。

所以,想讓網站變快?先從需求面決定外掛去留,再來試著學習跟網站「對話」,了解這一切的運作,你就能對他多一份掌握。

主題也是有很暴力的,尤其是針對圖片有做出不少特殊規格縮/裁圖的那種,每一次的瀏覽都會耗費系統資源建立縮圖來達到完美佈局顯示。

外掛也是有很優雅的,原始碼才幾行,為了就是幫助不會寫程式的你去解決一個小問題。

使用 WordPress 開發網站,每一款使用的外掛我都會去看過原始碼以及確保維護與管理彈性。精簡到最後真的還是感覺慢,或許直接升級主機,可以得到最快的解答。

後記:需求不變下,減少外掛使用能提升速度的部分會偏向主機 Disk IO 與 實作邏輯、演算法的調整,很進階。而 Disk IO 在現在主機都採用 SSD 高速硬碟下可以說差異不大,偏向選擇主機上的技巧了。

#WordPress #破解迷思 #安裝外掛 #速度變慢 #技術相關

- Powered by Mxp.TW -FB2WP-


Share:

作者: Chun

資訊愛好人士。主張「人人都該為了偷懶而進步」。期許自己成為斜槓到變進度條 100% 的年輕人。[//////////____30%_________]

參與討論

9 則留言

  1. 自動引用通知: [WordPress] 加速網站!禁止主題或外掛產生多餘縮圖格式 - 一介資男
  2. 自動引用通知: [WordPress] 加速網站!禁止主題或外掛產生多餘縮圖格式 | 一介資男
  3. 其實剛好在 WordCamp 時就有被人問到過類似的,還很新鮮XD

  4. 謝謝前輩提供這些觀念,很少有人丟出這樣的思考方向,清一色都是粗淺地建議使用輕盈的主題並且減少外掛數量,然而,外掛數量到底要多少才算少,多多又是多呢?
    可能還是得取決於主機方案與主題以及外掛本身吧!
    想請教前輩,如果是SiteGround的GrowBig方案搭配AVADA主題,同時啟用30個以上的外掛算太多嗎?
    又,同樣的主題與外掛數量放到Linode的最便宜方案中,也會是太多嗎?

    1. 哈囉!你理解的很正確。正如你這樣問也是需要有經驗值的判斷!與其說外掛越少越好,不如說每個外掛都用得剛剛好,不會有殺雞用牛刀的情況才是最好,這我想你也應該知道完全就是根據網站設計的需求為主,無法通泛討論。

      如你所說,「速度」不只有網站,還有主機端。不過如果你舉例的主機是「共享主機」的話,那就很難估了。實際上我們討論到主機資源時會涵蓋「運算速度的 CPU」以及處理資料的「記憶體 RAM 和硬碟 Hard Disk 等級」,最後是網路環境(包含機房位置)等三大指標。 SiteGround 共享主機的方案並不著墨在這些細節資訊上,我們不會知道他用了什麼等級的機器來為你服務,以及「共享」的原因,也不會知道你的「鄰居」是不是不會跟你搶到太多資源。相比於同環境但放置在 Linode 最便宜方案中,我只能回答你,那個條件很乾淨,說好的硬體規格以及沒人跟你過度競爭同一台「虛擬主機」資源,可以得到完全的使用權,能不能符合你營運後的需求也是等試了才知道,但至少不合用的原因單純了,就是規格不夠,我常建議往租屋等級去思考:雅房、套房、樓房、獨棟,主機這領域成本已經很透明,大多就是花多少錢做多少事的概念。

      至於回到速度上來說,這還是要看你建站的目的,如果只是個 Blog ,我想兩邊都很適合, 30 個以上的外掛也算常見,但通常拖垮網站速度的就是某幾個大型應用如: WooCommerce 電商外掛、多國語言外掛 WPML..等。對於剛經營的網站,還不會這麼快碰到流量問題,思考成本時都先用最低去評估沒問題,等感到速度慢了再來升級是現在很多雲端平台有的功能,至於 SiteGround 這類型來說,主要還是透過綁約來達到成本攤平的商業考量。

      如果對於網站營運或是經營有興趣,建議可以多參加 WordPress 小聚來獲得更多成長經驗哦!

  5. 其實有許多問題可能無法單從網路與社團中的資料獲得解答,變數太多了!
    但是經驗可以慢慢積累,我相信小聚能夠獲得更深入的討論,希望哪天能夠克服不善交際以及根深蒂固的宅魂,積極地參加小聚交流討論。
    對了,順便請教下前輩,這篇文章中的Google廣告會隨著滑鼠滾動而出現再隱藏(不曉得這樣的形容是否能理解),這是哪一種廣告類型?

      1. 原來是這樣,對於閱讀者來說,桌機與手機瀏覽的效果都很不錯,謝謝前輩回覆。

發佈留言

發佈回覆給「饅頭」的留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *