談到 Google Cloud 架設網站,很多人的第一個疑問是「要租哪一種方案」,但 Google Cloud 並不是一般意義上的主機商,它沒有現成的網站套餐,而是一整組可以自由組合的雲端服務:放檔案的、跑程式的、跑資料庫的、處理流量分配的,各自獨立計費。同一個網站,可以用好幾種完全不同的架構放上去,費用結構與維運負擔也差很多。這篇不談免費額度,而是把焦點放在正式付費使用時的四種常見做法、帳單到底是怎麼算出來的,以及上雲之後有哪些事情必須由你自己負責,幫你判斷自己的網站適不適合走這條路。
先釐清:在 Google Cloud 上架網站有哪幾種路線
把網站放上 Google Cloud,大致可以依「你要管多少東西」分成四條路線。第一條是純靜態網站,把做好的 HTML、圖片、樣式檔放進雲端儲存空間,前面再加上負載平衡與 CDN;第二條是容器服務 Cloud Run,把網站程式打包成容器,交給平台依請求量自動啟動與縮減;第三條是虛擬機 Compute Engine,等於租一台完整的伺服器,作業系統以上全部自己裝;第四條是 App Engine,由平台提供指定程式語言的執行環境,你只要上傳程式碼。
這四條路線的差別,不在於哪一種比較高級,而在於責任切在哪裡。越接近虛擬機,自由度越高、能裝的東西越多,但作業系統更新、網頁伺服器設定、資安防護也全部落在你身上;越接近靜態網站或平台型服務,能動的地方越少,但需要照顧的東西也越少。選路線之前,先問自己兩個問題:網站需不需要後端程式與資料庫?團隊裡有沒有人能長期維護伺服器?這兩個答案,大致就決定了方向。
靜態網站:Cloud Storage 搭配負載平衡與 CDN
如果網站內容是純展示用途,例如形象頁、產品型錄、活動頁,沒有會員登入、沒有後台即時寫入,可以考慮把整站輸出成靜態檔案,放進 Cloud Storage 的儲存空間。這種做法沒有伺服器需要更新、沒有資料庫可以被入侵,結構最單純,面對突然湧入的流量也比較從容。
要注意的是,儲存空間本身只負責放檔案。想用自己的網域並啟用 HTTPS,通常要在前面設定一個外部應用程式負載平衡器,由它掛上 Google 代管的 SSL 憑證,再視需要開啟 Cloud CDN,讓訪客從較近的節點取得內容。這代表你的帳單裡除了儲存費用,還會多出負載平衡器的轉送規則與流量處理費用,以及網路輸出流量的費用。
靜態網站的另一個現實是更新方式。內容改動要重新產生檔案再上傳,若沒有搭配靜態網站產生工具或自動部署流程,非技術人員很難自己改一行字。如果網站需要經常由行銷或行政同仁更新,這條路要先想清楚更新流程由誰負責。
Cloud Run:把網站包成容器,有請求才運算
Cloud Run 適合有後端程式、但不想自己管伺服器的網站。你把網站程式與執行環境一起打包成容器映像檔,交給 Cloud Run 執行,平台會依照湧入的請求量自動增加或減少執行個體,沒有人造訪時甚至可以縮減到零。計費主要依處理請求時實際使用的 CPU 與記憶體計算,流量少的時段花費也跟著降低。
代價有兩個。第一是冷啟動:執行個體縮減到零之後,下一位訪客進來時要先等容器啟動,第一個回應會比較慢;如果設定保留最少執行個體來避免這個延遲,那些常駐的資源就會持續計費。第二是容器的檔案系統不會永久保存資料,重啟或擴充時寫進去的檔案都會消失。像 WordPress 這種需要資料庫、又會讓使用者上傳圖片的系統,放在 Cloud Run 上就得另外搭配 Cloud SQL 之類的代管資料庫,並把上傳檔案改存到 Cloud Storage,整體架構會比想像中複雜。
因此 Cloud Run 比較適合本來就以容器方式開發、採無狀態設計的網站或應用程式,例如自行開發的前後端分離網站、API 服務,或是開發團隊已經熟悉容器部署流程的專案。
Compute Engine:一台完整的虛擬機,自由度最高也最費心
Compute Engine 就是在 Google Cloud 上開一台虛擬機,你可以選擇作業系統、處理器與記憶體規格、磁碟類型,接著自行安裝網頁伺服器、PHP、資料庫,把網站架起來。Marketplace 裡也有預先裝好 WordPress 等常見系統的映像檔,可以加快部署,但部署完成的那一刻起,後續所有更新就是你的責任。
這條路的好處是熟悉:架構跟一般 VPS 差不多,網站搬進來、搬出去都相對直覺,想裝什麼套件也不受平台限制。它的計費邏輯則跟 Cloud Run 不同,虛擬機只要處於執行狀態就持續計費,不論有沒有人造訪;即使把虛擬機停止,掛載的永久磁碟、預留但未使用的靜態外部 IP、快照備份仍然會計費。很多人以為關機就不用錢,結果看到帳單才發現磁碟與 IP 一直在產生費用。
如果你的網站是 WordPress 這類傳統架構、團隊裡有人熟悉 Linux 系統管理,或是有特殊的伺服器環境需求,Compute Engine 是最直接的選擇;反過來說,沒有人能定期登入主機處理更新,就不該選它。
App Engine:交給平台管執行環境的中間選項
App Engine 是 Google Cloud 較早推出的平台型服務,標準環境支援數種主流程式語言的特定版本,你上傳程式碼,平台負責執行環境、擴充與負載分配,不必處理作業系統。它介於 Cloud Run 與虛擬機之間:比 Cloud Run 少一層容器打包的工作,但程式必須符合平台支援的語言版本與限制。
有幾個細節值得事先知道。App Engine 應用程式建立時要選定區域,建立之後就無法更改,如果主要客群在台灣,建立前就該選好鄰近的區域。標準環境同樣可以在沒有流量時縮減執行個體,但檔案系統一樣不適合存放使用者上傳的資料,需要搭配外部儲存與資料庫。對新專案來說,App Engine 與 Cloud Run 的定位有部分重疊,選擇時可以依團隊比較熟悉哪一種部署方式來決定。
計費邏輯:依用量計費,帳單由哪些項目組成
Google Cloud 的計費是依實際用量逐項累計,而不是固定月租。一個看似單純的網站,帳單上可能同時出現好幾類項目:
- 運算:虛擬機的執行時間、Cloud Run 或 App Engine 處理請求時使用的 CPU 與記憶體。
- 儲存:永久磁碟、Cloud Storage 的檔案容量,以及快照與備份佔用的空間。
- 網路:從 Google Cloud 送出去給訪客的輸出流量,跨區域傳輸也可能計費;進入的流量則通常不計費。
- 網路服務:負載平衡器的轉送規則與處理的資料量、CDN 的快取流量、預留的靜態 IP。
- 代管服務:Cloud SQL 這類資料庫執行個體只要開著就持續計費,日誌與監控資料量大時也會產生費用。
因為項目分散,最重要的習慣是在開始使用前就設定預算與警示。在帳單帳戶裡替專案建立預算,設定幾個門檻比例,用量接近或超過時系統會寄信通知。但要特別注意:預算警示只是通知,不會自動停止服務,用量超出後費用仍會繼續累積。若擔心意外流量或設定錯誤造成帳單失控,需要另外設計自動化處理,或至少指定專人在收到警示後立刻檢查。
另外建議在建立資源時就加上標籤,例如用途、環境、負責人,日後在帳單報表裡才能看出錢花在哪裡。正式上線前,也可以先用官方的價格計算工具,依預估的流量與規格試算,再跟實際帳單對照,逐步修正判斷。
上了雲端之後,哪些維運要自己扛
一般虛擬主機商通常會幫你處理主機環境的更新、基本備份與 SSL 憑證;搬到 Google Cloud 之後,這些事情有很大一部分會回到你身上,負擔多寡則依選擇的架構而定。
如果選的是虛擬機,作業系統與套件的安全更新、PHP 與資料庫版本的升級、防火牆規則、登入金鑰管理都需要有人定期處理;備份要自己設定快照排程,並實際測試還原。SSL 憑證若不是透過負載平衡器代管,就要自己安裝並確認會自動續約。網域的 DNS 可以繼續放在原本的網域註冊商,也可以改用 Cloud DNS,但無論放在哪裡,都要清楚記錄每一筆紀錄的用途。
即使是平台型服務,也還有幾件事躲不掉:專案的帳號與權限管理,哪些人能建立資源、哪些人只能檢視;服務帳戶與金鑰的保管;網站本身程式與外掛的更新;以及監控與告警,例如設定網站可用性檢查,網站停止回應時能第一時間收到通知。這些工作不會出現在報價單上,卻會實實在在地佔用人力。
中小企業什麼情況適合,什麼情況用一般主機或代管更省事
Google Cloud 對中小企業有價值的情境,通常有幾個共同點:團隊裡有工程人力,或有長期合作、熟悉雲端的技術夥伴;網站流量起伏明顯,需要依活動檔期彈性擴充;網站不只是官網,還要跟其他雲端服務串接,例如資料分析、自動化流程或自行開發的系統;或是公司已經有其他系統放在 Google Cloud 上,想集中管理帳單與權限。Google Cloud 在台灣也設有資料中心區域,主要客群在台灣的網站可以選擇鄰近的區域部署。
反過來說,如果你的網站是一般的形象官網或內容網站,流量平穩、主要由非技術人員更新,又沒有人能負責伺服器維運,那麼一般的虛擬主機或代管式 WordPress 主機通常更省事。固定月費容易編列預算,環境更新與備份由主機商處理,遇到問題有客服可以找。把有限的人力花在內容與網站體驗上,往往比花在管理雲端架構上更有效益。
折衷的做法也存在:主網站放在一般主機或代管主機,需要彈性與運算能力的部分,例如活動頁、檔案下載或內部系統,再放到 Google Cloud。不必一次把全部搬上雲端,先從需求最明確的部分開始,比較不容易踩到帳單與維運的坑。
常見問題
用 Google Cloud 架設網站一定比一般主機貴嗎?不一定。依用量計費的模式下,流量少、架構精簡的網站,費用可能不高;但若開了常駐的虛擬機、資料庫與負載平衡器,固定的基本開銷就會累積起來。真正影響總成本的,還包括維運所需的人力時間,比較時要一併算進去。
WordPress 網站適合放在哪一種 Google Cloud 服務上?最直接的是 Compute Engine 虛擬機,架構與一般主機類似,搬遷與維護也最直覺。放在 Cloud Run 或 App Engine 雖然可行,但需要另外處理資料庫與上傳檔案的儲存,架構較複雜,比較適合有開發團隊的情況。
設定了預算,超過時服務會自動停止嗎?不會。預算功能的作用是寄送警示通知,不會自動關閉資源。如果需要在超過預算時自動採取行動,必須另外設計程式化的處理流程,否則就要確保有人收到通知後立即處理。
搬到 Google Cloud 之後,網站速度一定會變快嗎?不一定。速度取決於區域選擇、規格設定、快取與網站本身的程式效率。雲端平台提供的是調整的彈性,但設定不當一樣會慢,搬遷後仍需要實際測試與調整。
要不要用 Google Cloud 架設網站,關鍵不在於平台本身好不好,而在於你的網站需求、團隊人力與預算習慣,是否對得上依用量計費、自己負責維運的模式。如果你不確定目前網站的架構適合留在一般主機還是轉往雲端,創昇SEO提供免費網站健檢,可以先檢視網站的速度、主機環境與結構,協助釐清真正的瓶頸在哪裡。
如果希望有人當面把不同架構的優缺點與維運分工說清楚,創昇SEO也提供全台免費到府解說,依照你實際的網站型態與人力狀況一起討論,再決定下一步要怎麼走。
