使用Cloudflare的迷思

之前寫了一篇關於cloudflare的文章, 收到了一些朋網友的信件詢問, 很多人都誤以為Cloudflare是網站的萬靈丹, 不但可以加速網站的loading速度, 更可以大幅節省流量. 這些觀點其實都沒有太大的錯誤, 但是卻很容易忽略到隱藏在背後的危機.

手頭上有在幫忙維護某一個擁有大量靜態圖片的網站, 這個特性是非常符合cloudflare的使用情境, 所以在我接手後變幫忙把她弄上去cloudflare, 結果相當的顯著, 網站loading速度變快了許多, 使用者使用意願也大幅增加, 於是帶來了更多的使用者.

聽起來一切都非常美好, 但是卻在server端觀察到, 隨著使用者的成長, 整體的system loading也跟著增加, 才猛然想起cloudflare是不會cache動態產生的檔案(其實html他也不會cache, 所以用rewrite rule去欺騙是沒有用的), 所以當你的網站吸引越來越多的使用者, 需要動態產生的內容也隨之增加, 因此造成server的loading過重. 於是進去後端做了些參數的調整, 就搞定了問題.

此外, 另外一個迷思是, 只要套上cloudflare後, 網站的response time就會進步了, 事實上, "機器的實體位置"還是很重要的, 如同之前提到的, 只要是動態產生的內容, cloudflare就會去跟你的機器索取一次內容, 所以你的機器離cloudflare遍佈在全世界機器的距離還是對response time會有所影響. 簡單地挑選步驟為:

  1. 觀察你的使用者多數位在那個國家
  2. 使用traceroute.org觀察這些國家的使用者會被導到cloudflare在全球的那個機房
  3. 選擇離這些機房近的hosting provider

以台灣使用者為例, 大多數都被導到cloudflare為在香港或是美西的機房, 所以會建議選擇在美國西岸的provider, 以達到最好的效果.

最後, 這個故事教會了我們什麼? 1) 如果你後端的code寫得很爛, 使用cloudflare只會加速你網站的死亡速度. 2) 透過cloudflare可以快速地(這邊比較的基準是在國外的vps, 如果你是使用國內hosting的有錢大爺, 不在此列 XD)將網站的靜態內容傳遞給使用者, 沒有意外的話PV會隨之增加, 請在server端做好準備. 3) 請慎選機器的實體位置.

本篇發表於 Cloudflare, Linux, Wordpress 並標籤為 。將永久鏈結加入書籤。

使用Cloudflare的迷思 有 3 則回應

  1. 信念一博 說道:

    小博也用了Cloudflare加速,向您请教如何选择设置用哪个机房?我注册的时候没发现可以设置的

  2. clyang 說道:

    你沒有辦法選擇機房, cloudflare的dns會自動根據user所在的位置幫user挑選. 中國大陸的使用者應該會被導到美國西岸.

  3. Neil 說道:

    我後來有研究一下,並且實戰一次cloudflare 在一個我維護的網站(含大量附件圖片)
    一個月原本大概3TB流量。可以降低到1T 上下,算是對於流量上負擔減輕

    我稍微有發現,PHP連線的速度變慢了。
    整體網站感覺上是變慢的,我在想可能跟你所說的有關

    大家先連上cloudflare 再由cloudflare 去跟 實體主機要資料。這樣的過程其實是會更延遲的。

    但可以降低流量是有目共睹的。

發表迴響

您的電子郵件位址並不會被公開。 必要欄位標記為 *

*

您可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>