WordPress 雖然說是一個非常好用而且非常有彈性的架站工具,但是對主機的性能要求其實也是不小,像我現在的這個站也用到了 4 core、6GB ram 的主機,當然,如果你的技術好的話,可以更有效的優化主機性能,那同樣的主機,你也可以乘載更多流量的訪客,那一個 WordPress 網站到底可以乘載多少的流量?
我見過某號稱專業的WordPress開發建站公司做出來的東西,一個只有展示功能的網站,每天只有幾十個人訪問,服務器已經用了2 core 、4G ram ,但是網站首頁打開要30秒,後台則每次打開都要卡更長時間,但是也有 1Gb ram、1 core 一天瀏覽數將近3萬的,所以說網站設定對性能的影響非常大啊~
SiteGround是國外一家這類指標控制得比較嚴格的主機商,我覺得有參考意義,所以拿來舉個例子。
它的最低性能主機有768Mb ram,官方給出的參考,可支撐的訪問量是10000PV每個月,一般認為這是指對資料庫有調用的動態請求數,因為資料庫操作是網站後台最耗主機資源的(打開關閉連接等等),這個數值關聯著你的虛擬主機在物理服務器上所允許使用的資源量,CPU,IO等等。
我有一個網站用的這個plan,每個月的PV目前在30000上下,這裡包含了所有到頁面的HTTP請求。如果單看數字,貌似遠遠超過主機處理能力了。其實不然,客服跟我說我網站的動態請求每個月在600上下,還只有服務器處理能力的一個零頭。
按著這個比例,可以簡單推算,一個768M的SSD虛擬主機,跑PHP7,網站做好優化(比如WP Super Cache)的基礎上,理論上每個月可以支撐約(10000 / 600) * 30000 = 480000即約合每天16000 PV (一般請求),數字看起來有點嚇人(單台服務器,無橫向擴展,記憶體不超過1G,有效虛擬內存為4G,但應該沒用到),因為絕大部分請求都走了緩存了。
自然主機商做了其他系統優化,但這個數據應該足以說明問題了,軟硬件處理好了,現在的主機真的很便宜。處理不好,你的WordPress網站可能挺不過一個小峰值。
部落格和企業信息站性能要求上沒有本質區別,首先要排除這是不是個安全問題(而非性能問題),是不是有什麼請求在往你的數據庫灌東西(調整你的php配置,限制post max size,limit馬max memory size),裝好WordPress Security Plugin | Wordfence這樣的插件,可以幫你過濾掉這類攻擊。裝好Blackhole for Bad Bots可以幫你屏蔽掉惡意蜘蛛,然後再來看訪問數據。
不管是不是DDos,都預防著:DDos Mitigation – Using NGINX to Prevent DDoS Attacks | NGINX,WP fail2ban這些配置通常託管主機上要做的,但非全托主機不會,很多時候就給你個裸機,自己架站的就比較容易忽略這個部分。
如果是正常峰值,好好看你的緩存插件配置,一個部落格,沒有理由讓大部分請求走數據庫。如果你用的VPS,好好讀讀教學文件,或詢問主機商,免得累死自己。最後一個很重要的,就是用備份外掛做好自動備份,不管怎樣以防萬一。