今天路過 FB 看到朋友蔡校長寫了一篇政治文章,這篇文章的話題性之高( Visit 40,000+、Pageview 130,000+) 意外的衝倒了部落格本家。蔡校長不是不想解決,也一直為 Scaling 屢次搬家所苦,只是他遇到的狀況,會跟網路上能夠 Google 到的答案都不太一樣。剛好我在創業前,就是在 某科技網站 專注做 CMS ,這個主題還算略懂,所以打算寫篇文章來分享給有類似之苦的朋友。
(此篇文章特別的目標讀者是:針對使用 Wordpress 架站,並且苦惱一天到晚倒站的內容生產者)
You Should Use 3-party Blog
我在兩年前的 Startup : 如何挑選適合的 Hosting Plan? 其實約略寫過一些類似的內容。但坦白來說,當年的文章只是總綱而已,我並沒有深入寫 Detail,還有後面的技術轉折。
首先。把結論寫在最前面:如果你想創業,想先弄個基本內容網站。我的首選還是當年該篇文章的建議,
- 「Facebook 粉絲頁 + 別人的 Blog」撐過 10000 daily PV。
- 接著再每個月花個 200 USD 租台 Dedicated Hosting 換成 Customized CMS 如 ( Wordpress )。
- 撐過 10 萬 daily PV 後,再養個專人或者是外包 System Admin 幫你做 scaling。
如果你的困難點是沒有預算做這件事。那我委婉的建議只能是,也許你的 business model 需要調整。
Why? And fully exaplained
用 Tumblr 或者 Blogspot 架站,其實某種程度上來說,是犧牲了「彈性」換取「PV Scaling」。也就是站長不能隨心所欲的安裝五花八門的布景,和安裝很多外掛。只能使用限定語法做有限的功能擴充,但這事實上是為了保證一件事:「PV 大的時候絕對不會倒站」。
99% 的 Solution: 「找台灣的主機商租便宜的主機空間丟 Wordpress」
做內容的人,對 CMS 架設的方案會有三大需求:
- 主機讀取速度要快
- 容易依需求高度客製
- 容易學習上手
- ( Addition : 便宜)
這會導致大家最後只有一個殊途同歸的 solution:
- 主機讀取速度要快:找台灣的主機商
- 容易依需求高度客製 : 使用 Wordpress
- 容易學習上手: 後台使用 Cpanel
- Shared Hosting
「找台灣的主機商租便宜的主機空間丟 Wordpress」
嗯。但是...其實你的 Blog 只有 500 daily pageview 才適合這個 solution ...XD
Shared Hosting / VPS / Dedicated Hosting
這個小標其實是很少人專文解釋的議題。也是我要講的重點。希望這邊我不會講的太技術。我會解釋為什麼「找台灣的主機商租便宜的主機空間丟 Wordpress」是一個不太可行的架構。
我們在這裡做一些名詞代換。也許就能夠讓你很快的理解
主機商做你的生意的方式是這樣。他在機房擺了一檯專屬主機 。
- 一般的 VPS 租賃可以想像成是,房東租了一棟大樓 16 樓 (Dedicated Hosting),你租了「一層公寓」。
- 一般的 Shared Hosting ( 空間)租賃,可以想像成是,房東租了一棟大樓 16 樓,又把每一樓隔成了 10 間房間,你租了其中一間「套房」。
平常你只有 5 個朋友會常來逛(對比為500PV/day)。所以這樣的量對一個 5 坪套房還算 OK。但是某天 100 個朋友(對比 10000 PV/day) 要來你家開 Party。會發生什麼事?
- 被室友投訴噪音無法居住(CPU 用量過高)
- 跳電,缺水。(頻寬不敷使用)
所以房東會對你做出什麼處置?沒錯就是
(1) 罰款 (2) 不租你
Shared 主機商,你還可以代換成另外一種角色。他其實不是真正的房東,而是租賃公司,所以服務程度取決在該租賃公司的管理。有些租賃公司朝九晚五,沒有保火險。(上班時間才會幫你處理 Bug,也沒有備份)
它們不是惡人也沒有很爛。純粹只是「不適合你」。因為家裡開始常常有人會辦 Party。硬要在 5 坪套房辦 100 人 Party 只會被房東趕走、停 Keycard、有公共危險之虞。
Wordpress 的優點與極限
Wordpress 常常被人家推薦架站。理由是擴充性高,布景多。想要換個漂亮布景嗎?沒問題,挑一挑就有。想要上個 SEO 套件?沒問題,Google 搜尋安裝一下就有。甚至要架購物網站賣東西,用 Wordpress 也是可行的(好像妖術)。
它的好處就「方便取得」「裝潢容易」。要更容易代換想像的話,可以想成「北歐某知名傢俱」IXXA。
但如果愛用 IXXA 的人,應該知道使用該牌傢俱的代價是什麼...
雖然 Wordpress 取得套件容易。但是你不知道他的隱藏成本是什麼。這些套件雖然取得容易,但往往也是倒站的元凶
- 某套件 PHP 語法效能不彰。導致 CPU 使用率因為一個小功能無限飆高。
- 某套件 SQL 語法效能不彰。導致資料庫效能低落,吃光主機所有資源(很多網站通常資料庫跟網頁同一檯主機)。
其他倒站的原因不能怪罪於 Wordpress 但也有相當程度相關的原因有以下
- Website Request 太多導致 Process / CPU 不夠用
- 圖檔 / CSS / JS (小檔)請求太多,HTTPD 不夠撐...
- MySQL 語法不好,Query 過多導致資料庫連線數量過多
- ...
四年前曾經某媒體網站的 Case 就是 Daily PV 30000+。是 Dedicated Hosting 卻始終無法 Scale 上去,是因為每天早上十點,下午三點,晚上十點各會倒站 30 分鐘....XDDD
(剛好是人潮最洶湧的時間)
坦白說如果站長「不懂」或「找不到人」如何 Tune / Trouble Shooting Wordpress 的話,PV 到一個程度就只能靠換租更大規模的 Dedicated Hosting 撐上去。
(待續(
本系列
- (1) 談成長中 CMS 的 Scaling 之道 (1)← You Are Here
- (2) 談成長中 CMS 的 Scaling 之道 (2)