網站 / 改善wordpress網站的效能

之前網站因為增加了許多自訂的發文推播

導致網站速度變慢,GCP的VM觀測數據顯示發文的時候,CPU的執行率可以達到200%

所以也出現提升CPU等級的建議,但是往上升一級就多了近一倍的費用

對我來說實在吃不消,因為除了GCP的費用之外,還有youtube的月費、google 雲端硬碟的年費

一年付給google公司7~8千元跑不掉,GCP費用占了80%

當初建置網站的目的是為了紀錄一些學習程式的過程,順便紀錄自己感興趣的東西

所以想先試試看能不能透過一些方式來降低網站的執行負荷量

之前為了增加特定功能,會嘗試不同的外掛,從中挑選最適合的

但是其他的外掛,我通常只是設定成未啟用,沒有刪除

不過為了網站效能,這次刪除了所有沒有啟用、或者用不到的外掛

另外還進行了兩個改變

第一個是整併推播外掛程式

因為都是同一個觸發事件,這樣會導致網站同時執行多個程式

所以我把這些通通整併成一個程式

也就是事件觸發之後,Line、Blogger、facebook的推播都是接續處理

不再分開(卻可能同時)處理

也因為這些推播都是向外發出請求

都是非同步執行,所以每個部分都暫停5秒鐘才接續往下執行

剛好跟一般認知的概念相反,這裡是指各個程式的執行是各做各的

不會等其他程式完成,再進行下一個

第二個是不在網站的編輯器撰寫文章

後來發現在網站的編輯器撰寫文章,也會導致網站的負荷量飆高

所以我嘗試改成先在其他網頁編輯器完成內容,再將html格式的內容貼回去

之前一直使用的線上網頁編輯器,使用了CKEditor4的編輯器

出於好奇,查看了網站的程式碼,發現其實引用的方式很簡單

所以我自己也炮製了一個線上網頁編輯器

目前CKEditor除了4之外,最新的是5

不過CKEditor5是node架構了,而且好像也沒有免費授權的版本

而CKEditor4 除了LTS(Long-term support,長期支援)版本需要授權之外

其他版本都是可以免費使用,所以我引用了最後的4.22.1


目前這些方法似乎有效果,即使網站發文的時候,CPU執行率也沒有超過100%了