提供網站內容

本文討論如何在 Google Cloud Platform (GCP) 託管網站。GCP 提供健全、彈性、可靠且可擴充的平台來提供網站內容。Google 打造 GCP 所用的基礎架構,與 Google 用於 Google.com、YouTube 和 Gmail 等網站內容的基礎架構相同。您可以根據個人需求,選擇最適合的基礎架構類型與設計,供應自身網站內容。

如果您符合以下情況,這篇文章可能對您相當實用:

  • 您已充分瞭解如何建立網站,且過去曾部署並執行提供網路服務的基礎架構。
  • 您正在評估是否要將網站遷移至 GCP,還有遷移的方式。

如果您要建構簡單的網站,請考慮使用 Google 協作平台,這是結構化 Wiki 和網頁建立工具。詳情請造訪協作平台說明

做出選擇

如果您是初次接觸 GCP,那麼從您已熟悉的技術開始著手,是相當合理的做法。舉例來說,如果您目前使用硬體伺服器或虛擬機器 (VM) 來託管網站,無論您是透過其他雲端供應商或是使用自己的硬體來進行,Compute Engine 都可以提供您熟悉的模式。如果您已經在使用平台式服務 (PaaS) 產品 (例如 Heroku 或 Engine Yard),App Engine 可能就是最好的起點。

在您熟悉 GCP 之後,便可以探索 GCP 提供的豐富產品和服務。例如,如果您一開始就使用 Compute Engine,可以選擇使用 Google Kubernetes Engine (GKE) 來強化網站的功能,或將部分或所有功能遷移至 App Engine。

下表統整列出 GCP 提供的託管選項:

選項 產品 資料儲存 負載平衡 擴充性 記錄
靜態網站

Cloud Storage

Firebase 代管

Cloud Storage 值區 自動
虛擬機器 Compute Engine

Cloud SQL Admin API、Cloud Storage API、Cloud Datastore API 和 Cloud Bigtable API;或者,您可以使用其他的外部儲存空間供應商。

硬碟式永久磁碟 (又稱為「標準永久磁碟」) 及固態永久磁碟 (SSD)。

HTTP(S)

TCP Proxy

SSL Proxy

IPv6 終止功能

網路

跨地區

內部

透過代管執行個體群組自動執行

Stackdriver Logging

Stackdriver Monitoring

Monitoring Console

容器 GKE 類似 Compute Engine,但與永久磁碟互動的方式不同 網路
HTTP(S)
叢集自動配置器

Stackdriver Logging

Stackdriver Monitoring

Monitoring Console

代管平台 App Engine Google 為您代管 Google 為您代管 Google 為您代管 Google 為您代管

本文可以協助您瞭解在 GCP 上可使用哪些主要技術來提供網路服務,並簡單介紹這些技術的運作原理。本文提供完整說明文件、教學課程和解決方案文章的連結,這些文章可協助您準備好繼續進行時,獲得更深入的瞭解。

瞭解費用的計算方式

由於各種選擇方案存在許多變數,個別實作情形也不同,因此本文不提供有關費用的具體建議。如需瞭解 Google 對於 GCP 計價方式的依循原則,請參閱「計價方式」頁面。如要瞭解個別產品的計價方式,請參閱「產品價格」一節。您也可以利用以下這些工具來協助自己評估 GCP 的使用費用。

  • 使用 Pricing Calculator 可讓您評估自己的 GCP 用量。您可以針對想要使用的服務提供詳細資料,然後查看價格的估算結果。
  • 使用總持有成本 (TCO) 工具可評估在 GCP 執行 Compute 負載的相對成本。這項工具會先提供多個輸入值來製作可讓您調整的成本模型,然後再比較 GCP 和 Amazon Web Services 的估算成本。這項工具不會針對一般應用程式的所有元件 (例如儲存空間和網路) 製作模型。

設定網域名稱服務

通常,您會想為自己的網站註冊網域名稱。您可以使用公開網域名稱註冊商 (如 Google Domains),為您的網站註冊專屬的名稱。如果您想完全掌握自己的網域名稱系統 (DNS),則可以使用 Cloud DNS 做為您的 DNS 供應商。Cloud DNS 說明文件包括快速入門導覽課程,可協助您迅速上手。

如果您要使用現有的 DNS 供應商,通常需要建立幾筆記錄給該供應商。針對如 example.com 的網域名稱,您必須建立 A 記錄提供給 DNS 供應商。針對 www.example.com 子網域,則須建立 CNAME 記錄,使 www 將該記錄指向至 example.com 網域。A 記錄會將主機名稱對應至 IP 位址;CNAME 記錄會為 A 記錄建立別名。

如果您的網域名稱註冊商也是您的 DNS 供應商,通常您只須完成這些步驟即可。如果註冊商和 DNS 供應商不同,請確認網域名稱註冊商確實將正確的名稱伺服器連結至您的網域。

變更 DNS 之後,記錄更新可能需要一些時間才能傳播完畢,實際的時間長度取決於區域中的存留時間 (TTL) 值。如果這是新的主機名稱,變更很快會生效,因為 DNS 解析器並沒有快取之前的值,並且會聯繫 DNS 供應商以取得轉送要求的必要資訊。

託管靜態網站

透過 HTTP(S) 提供網站內容的最簡單方式,就是託管「靜態網頁」。靜態網頁通常是使用 HTML 撰寫而成,所以提供的內容固定不變。如果您的網站網頁類似於網誌文章或小型企業網站的網頁,在發布之後鮮少變更,則適合使用靜態網站。您可以使用靜態網頁進行廣泛的應用,但是如果您的網站必須透過伺服器端程式碼與使用者進行全面的互動時,則您應考慮採取本文所討論的其他選項。

透過 Cloud Storage 託管靜態網站

如果要在 Cloud Storage 託管靜態網站,您需要建立 Cloud Storage 值區,接著上傳內容,然後測試您的新網站。您可以直接從 storage.googleapis.com 提供資料;或者,您可以確認擁有自己的網域,然後使用該網域名稱。

您可以使用自選的方式建立靜態網頁。例如,您可以使用 HTML 和 CSS 親自撰寫網頁,也可使用「靜態網站產生器」(例如 JekyllGhostHugo) 建立內容。靜態網站產生器不但可讓您使用 Markdown 撰寫內容,同時還提供範本和工具,讓您可以建立靜態網站。網站產生器一般會提供本機網路伺服器,方便您用來預覽內容。

在您的靜態網站運作之後,您可以視需要使用任何程序來更新靜態網頁。這類程序可以相當簡單明瞭,就如同將更新頁面手動複製到值區一般。或者,您也可以選擇採用更自動化的方法,例如將內容儲存在 GitHub,然後使用 Webhook 執行更新值區的指令碼。而更為先進的系統可能會使用持續整合/持續推送軟體更新 (CI/CD) 工具 (如 Jenkins),來更新值區中的內容。Jenkins 有個 Cloud Storage 外掛程式,能提供 Google Cloud Storage Uploader 建構後步驟,以便將建構成果發布到 Cloud Storage。

如果您的網頁應用程式必須提供靜態內容或使用者上傳的靜態媒體,使用 Cloud Storage 來託管和提供內容的方式,不僅兼具成本效益與效率,同時也可減少傳送至您網頁應用程式的動態要求數量。

此外,Cloud Storage 可以直接接受使用者提交的內容。這項功能可讓使用者不需要使用 Proxy 連線到您的伺服器,就能以安全的方式直接上傳大型媒體檔案

如果要讓您的靜態網站發揮最佳效能,請參閱 Cloud Storage 的最佳做法

如需詳細資訊,請參閱以下頁面:

透過 Firebase 代管功能託管靜態網站

Firebase 代管功能可為您的網路應用程式提供快速又安全的靜態託管。透過 Firebase 代管,只要一個指令,即可部署網路應用程式和靜態內容到全球內容傳遞聯播網 (CDN)。

下列為使用 Firebase 代管的好處:

  • Firebase 代管內建零設定 SSL,而且您可以免費在自訂網域上佈建 SSL 憑證。
  • 您的所有內容都會透過 HTTPS 提供。
  • 您的內容會從世界各地的 CDN 邊緣伺服器傳送給使用者。
  • 只要使用 Firebase CLI,就能在幾秒鐘內啟動並執行您的應用程式。請使用指令列工具將部署目標新增到建構程序中。
  • 您可以取得發布管理功能,例如新資產的整體部署作業、完整的版本管理功能,以及單鍵執行復原程序。
  • Firebase 代管提供對單頁應用程式很有用的設定,而該設定對其他較類似應用程式的網站也很實用。
  • Firebase 代管可與其他的 Firebase 功能完美搭配運作。

如需詳細資訊,請參閱以下頁面:

搭配 Compute Engine 使用虛擬機器

針對基礎架構式服務 (IaaS) 用途,GCP 提供了 Compute Engine。Compute Engine 提供穩健的運算基礎架構,但您必須選擇及設定所要使用的平台元件。有了 Compute Engine,就必須由您負責設定、管理及監控系統。Google 會確保資源可用、可靠且隨時就緒供您使用,但資料的佈建及管理仍由您決定。此處的優點是,您能夠完全掌控系統,並擁有無限的彈性。

無論您想要哪一種網站服務系統,幾乎都可以使用 Compute Engine 來設計及部署。您可以使用稱為執行個體的 VM 來建構應用程式,就像您有自己的硬體基礎架構一樣。Compute Engine 提供各種機器類型,讓您可以根據需求和預算來自訂設定。您可以選擇自己偏好的作業系統、開發堆疊、程式語言、架構、服務及其他軟體技術。

透過 GCP Marketplace 自動設定

部署完整網路服務堆疊的最簡易方式,就是使用 GCP Marketplace。只要點選幾下,就可以透過 Google 點擊部署或 Bitnami,針對 100 多個已完全實作的解決方案中的任一項進行部署。

GCP Marketplace

例如,您可以透過 GCP Marketplace 設定 LAMP 堆疊WordPress。這套系統只需要幾分鐘的時間,便可在單一執行個體上部署完整的工作軟體堆疊。在您部署之前,GCP Marketplace 會顯示執行網站的成本估算值,讓您清楚知道系統將為您安裝哪些軟體元件版本,並且可讓您變更元件執行個體名稱、選擇機器類型及選擇磁碟大小等選項來自訂設定。完成部署之後,您可以完全控管 Compute Engine 執行個體、其設定以及軟體。

手動設定

您也可以選擇手動在 Compute Engine 建立您的基礎架構,無論是從頭開始建構您的設定,還是在 GCP Marketplace 部署上進行建構皆可。例如,您可能會想要使用 GCP Marketplace 未提供的軟體元件版本,或者您想要自行安裝及設定所有項目。

提供設定網站的完整架構和最佳做法不在本文討論範圍內。但從高階觀點來看,在 Compute Engine 設定網站伺服基礎架構時,有以下的技術面規範:

  • 瞭解要求。如果您要建置新網站,請務必瞭解所需的元件,如執行個體、儲存空間需求,以及網路基礎架構等。如果您要遷移現有解決方案的應用程式,您可能已經瞭解這些需求,但您仍須思考如何將現有設定對應至 GCP 服務
  • 規劃設計。請仔細思考網站的架構,然後寫下您的設計,越明確越好。
  • 建立元件。您通常會認為是實體資產的元件 (例如電腦或網路交換器),會透過 Compute Engine 中的服務提供。舉例來說,如果您要一台電腦,就必須建立 Compute Engine 執行個體。如果您想要永久擁有硬碟,也可以建立對應的執行個體。 Cloud Deployment Manager 讓這個步驟變成簡單、可重複的程序。
  • 設定及自訂。 當您擁有所需的元件之後,就需要設定這些元件、安裝並設定軟體,然後寫入並部署您要求的任何自訂程式碼。您可以執行殼層指令碼來複製設定,這有助於加快您未來的部署作業。Deployment Manager 會提供陳述式的彈性設定範本,讓您可用來執行自動的資源部署作業,對部署作業也有幫助。您也可以利用 IT 自動化工具,例如 PuppetChef
  • 部署資產。根據推測,您大概已經有網頁和圖片。
  • 測試。確認所有作業是否如預期執行。
  • 部署到實際工作環境。發布您的網站,讓全世界都可以看到並使用。

為了協助您開始使用並瞭解如何手動設定 Compute Engine 執行個體,請閱讀以下其中一個或多個教學課程:

使用 Compute Engine 儲存資料

大多數的網站都需要儲存空間。您可能基於多種因素而需要使用儲存空間,例如儲存使用者上傳的檔案,當然還有儲存您網站使用的資產。

GCP 提供各種代管儲存空間服務,包括:

  • Cloud SQL 中以 MySQL 為基礎的 SQL 資料庫。
  • NoSQL 資料儲存空間有兩個選項:Cloud DatastoreCloud Bigtable
  • Cloud Storage 中具備一致性、擴充性與大容量的物件儲存空間。Cloud Storage 有數種類別:
    • Multi-Regional:提供最高的可用性與異地備援機制。
    • Regional:提供最高的可用性與本地儲存空間位置。
    • Nearline:提供低成本的選擇,適合存取頻率不到每月一次的資料。
    • Coldline:提供成本最低的封存、備份和災難復原選項。
  • Compute Engine 上的永久磁碟,可做為您執行個體的主要儲存空間。Compute Engine 提供硬碟式永久磁碟 (又稱為「標準永久磁碟」),以及固態永久磁碟 (SSD)。您也可以選擇使用永久磁碟,在 Compute Engine 上設定您偏好的儲存空間技術。舉例來說,您可以將 PostgreSQL 設成 SQL 資料庫,或是將 MongoDB 設成 NoSQL 儲存空間。如要瞭解 GCP 上儲存空間服務的完整範圍與優點,請參閱選擇儲存空間選項一文。

使用 Compute Engine 進行負載平衡

針對任何大規模運作的網站,通常需要運用負載平衡技術,將工作負載分散到伺服器當中。您可以透過多種選項在 Compute Engine 上建構達到負載平衡的網路伺服器,包括:

負載平衡部署作業是有彈性的,您可以搭配現有的解決方案來使用 Compute Engine。如需相關範例,請參閱使用 HAProxy 和 Consul 自動調整內部負載平衡,以瞭解如何自動調整 HAProxy 負載平衡層和後端伺服器層;同時參閱用 NGINX 進行 HTTP(S) 負載平衡,以瞭解可用於取代 Compute Engine 負載平衡器的解決方案。

使用 Compute Engine 發布內容

由於回應時間是任何網站的基本指標,因此使用 CDN 來縮短延遲時間和提高效能的需求是很常見的,對於網路流量來自全球各地的網站而言,更是如此。

Cloud CDN 會使用 Google 遍佈全球的網路邊緣網路連接點,從最接近使用者的快取位置來提供內容。Cloud CDN 與 HTTP(S) 負載平衡搭配運作。如要從單一 IP 位址提供 Compute Engine、Cloud Storage,或是這兩者的內容,請針對 HTTP(S) 負載平衡器啟用 Cloud CDN 即可。

使用 Compute Engine 自動調度資源

您可以設定架構,使該架構能隨著需求變化而新增和移除伺服器。這個方法有助確保您的網站在尖峰負載下執行效能良好,同時可在更典型的需求期間有效控管成本。您可以使用 Compute Engine 所提供的自動配置器來達到這個目的。

自動調度資源是代管執行個體群組的功能。代管執行個體群組是透過常用執行個體範本,建立的一組性質相同的虛擬機器執行個體。自動配置器會在代管執行個體群組中新增或移除執行個體。雖然 Compute Engine 同時具有代管和非代管執行個體群組,但您只能將代管執行個體群組與自動配置器搭配使用。詳情請參閱在 Compute Engine 上自動調度一文。

如要深入瞭解如何建構可擴充且具彈性的網路應用程式,請參閱建構可擴充且具彈性的網路應用程式一文。

使用 Compute Engine 進行記錄和監控

GCP 提供讓您密切掌握網站現況的功能。

Stackdriver Logging 會從 GCP 上的應用程式和服務收集記錄檔並加以儲存。您可以查看或匯出記錄,以及使用記錄代理程式來整合第三方記錄。

Logging

Stackdriver Monitoring 會為您的網站提供資訊主頁和快訊。您可以利用 Monitoring 主控台設定 Monitoring。而且也能檢閱雲端服務、虛擬機器和常見開放原始碼伺服器 (例如 MongoDB、Apache、Nginx 和 Elasticsearch) 的效能指標。Stackdriver Monitoring API 可用於擷取監控資料及建立自訂指標。

Monitoring 資訊主頁

使用 Compute Engine 管理 DevOps

如要瞭解如何使用 Compute Engine 管理開發運作,請參閱下列文章:

搭配 GKE 使用容器

您可能已經在使用容器,例如 Docker 容器。對於網路服務,容器可提供的幾個優點包括:

  • 元件化。您可以使用容器來分隔網頁應用程式的各種不同元件。例如,假設您的網站會執行網路伺服器和資料庫,您可以在不同的容器中執行這些元件,以便在修改及更新某個元件時,不會影響到其他的元件。當您應用程式的設計變得較為複雜時,容器很適合用於服務導向架構,包括微服務。這類的設計支援擴充性,以及其他目標。
  • 可攜性。容器本身具有執行所需的一切資源,也就是說,您的應用程式會與其依附元件組合在一起。您可以在各種平台上執行容器,不必擔心基本的系統細節問題。
  • 快速部署。當您準備要部署容器時,由於系統是根據一組定義和映像檔進行建構,因此您能夠以快速、可靠的自動化方式來部署組件。容器通常不大,且部署速度比虛擬機器等項目快上許多。

GCP 的容器運算功能甚至能為網路服務提供更多的好處,包括:

  • 自動化調度管理GKE 是根據 Kubernetes 建構的代管服務;Kubernetes 是 Google 推出的開放原始碼容器自動化調度管理系統。只要使用 GKE,您的程式碼就會在容器中執行,而容器所屬的叢集是由 Compute Engine 執行個體組成。您也不必管理個別的容器,或手動建立及關閉每個容器,您可以利用 GKE 和自己定義的設定來自動管理叢集。
  • 映像檔登錄Container Registry 在 GCP 上提供存放 Docker 映像檔的私人儲存空間。您可以透過 HTTPS 端點存取 Container Registry,以便從任何機器提取映像檔,無論該機器是 Compute Engine 執行個體,還是您自有的硬體,都沒問題。這項登錄服務會將自訂映像檔託管在您 GCP 專案的 Cloud Storage 中。這樣能確保在預設情況下,只有您專案的成員能夠存取該自訂映像檔。
  • 機動性。這代表您靈活地搭配其他雲端供應商來移動及合併工作負載,或是混合雲端運算工作負載與內部部署實作來建立混合型解決方案。

使用 GKE 來儲存資料

由於 GKE 在 GCP 上執行,且把 Compute Engine 執行個體當做節點使用,因此您的儲存空間選項與 Compute Engine 上的儲存空間有許多共通之處。您可以透過 Cloud SQL、Cloud Storage、Cloud Datastore 和 Cloud Bigtable 個別的 API,來存取該 API 所屬的服務,或是採用您選擇的其他外部儲存空間供應商。不過,GKE 與 Compute Engine 永久磁碟的互動方式,的確與一般的 Compute Engine 執行個體不同。

Compute Engine 執行個體包括已連接的磁碟。使用 Compute Engine 時,只要執行個體存在,磁碟磁區就會保留在該執行個體中。您甚至可以卸離磁碟並用於不同的執行個體。不過在容器中,磁碟上的檔案是臨時檔案。當容器重新啟動時,例如在當機之後重新啟動,磁碟上的檔案就會遺失。Kubernetes 透過採用磁碟區抽象層來解決這個問題,而其中一種磁碟區類型是 gcePersistentDisk。也就是說,您可以使用 Compute Engine 永久磁碟搭配容器,來確保在您在使用 GKE 的期間,資料檔案不會遭到刪除。

如果您想瞭解磁碟區有哪些功能和優點,建議您先對 Pod 的運作方式有初步的認識。您可以將 Pod 想像成一或多個容器的應用程式專屬邏輯主機。Pod 會在節點執行個體上運作。當容器是 Pod 的成員時,便可以共用多項資源,包括一組共用儲存磁碟區。即使容器重新啟動,這些磁碟區可確保資料仍會保留,並且可以在 Pod 的容器之間共用。當然,您也可以在 Pod 中使用單一容器和磁碟區,但 Pod 是可將這些資源彼此邏輯連接的必要抽象層。

如需範例,請參閱教學課程:搭配 WordPress 和 MySQL 使用永久磁碟

使用 GKE 進行負載平衡

許多大型網路服務架構都需要執行多部伺服器來分攤流量需求。由於您可以使用 GKE 建立及管理多個容器、節點和 Pod,因此自然可以達到負載平衡的網路服務系統。

使用網路負載平衡機制

在 GKE 中建立負載平衡器的最簡單方式,就是使用 Compute Engine 的網路負載平衡功能。網路負載平衡功能可根據傳入的網際網路通訊協定資料 (例如位址、通訊埠和通訊協定類型),來平衡系統的負載。網路負載平衡功能採用轉送規則,而這些規則會指向列出可用於負載平衡之執行個體的目標集區

只要使用網路負載平衡功能,您就能根據額外的 TCP/UDP 型通訊協定 (如 SMTP 流量) 進行負載平衡,而且您的應用程式可以直接檢查封包。

您只要將 type: LoadBalancer 欄位新增至服務設定檔,便可以部署網路負載平衡機制。

使用 HTTP(S) 負載平衡

如果您需要更先進的負載平衡功能 (例如 HTTPS 負載平衡、內容式的負載平衡,或是跨地區的負載平衡),您可將 GKE 服務與 Compute Engine 的 HTTP/HTTPS 負載平衡功能整合在一起。Kubernetes 所提供的輸入資源會將一組規則封裝,用於將外部流量轉送至 Kubernetes 端點。在 GKE 中,輸入資源會處理 Compute Engine HTTP/HTTPS 負載平衡器的佈建和設定工作。

如需在 GKE 中使用 HTTP/HTTPS 負載平衡的詳細資訊,請參閱使用輸入設定 HTTP 負載平衡一文。

使用 GKE 進行資源調度

如要自動調整叢集的規模,您可使用叢集自動配置器。這項功能會定期檢查是否有尚未排程的 Pod 正在等待有可用資源的節點。當這類的 Pod 存在時,如果調整大小可讓系統為等待中的 Pod 進行排程,自動配置器便會調整節點集區的大小。

叢集自動配置器也會監控所有節點的用量。如果您長時間不會使用某個節點,且能將該節點的所有 Pod 都安排在其他位置執行,那麼這個節點會遭到刪除。

如要進一步瞭解叢集自動配置器、其限制和最佳做法,請參閱叢集自動配置器說明文件

使用 GKE 進行記錄和監控

和在 Compute Engine 上一樣,LoggingMonitoring 會提供記錄和監控服務。Logging 會從應用程式和服務收集記錄檔並加以儲存。您可以使用記錄代理程式查看或匯出記錄檔,以及整合第三方記錄檔。

Monitoring 會為您的網站提供資訊主頁和快訊。您可以利用 Monitoring 主控台設定 Monitoring。而且能檢閱雲端服務、虛擬機器和常見開放原始碼伺服器 (例如 MongoDB、Apache、Nginx 和 Elasticsearch) 的效能指標。您也可以使用 Monitoring API 擷取監控資料及建立自訂指標。

使用 GKE 管理開發運作

當您使用 GKE 時,就已經擁有大多數人在想像開發運作時所想到的許多優勢。而在封裝、部署和管理方面,更是如此。您可以針對您的 CI/CD 工作流程需求,使用 Jenkins 之類的熱門工具。請參閱下列文章:

使用 App Engine 在代管平台上建構

在 GCP 上,代管平台式服務 (PaaS) 稱為 App Engine。在 App Engine 上建構網站時,可以讓您專注於編寫功能的程式碼,然後由 Google 負責管理支援的基礎架構。App Engine 提供廣泛豐富的功能,可簡化擴充性、負載平衡、記錄、監控和安全等作業,遠比您自行建構和管理來得容易許多。App Engine 可讓您使用各種不同的程式設計語言來編寫程式碼,並且可利用多種其他 GCP 服務。

App Engine 提供「標準環境」,讓您在安全沙箱環境中執行應用程式。App Engine 標準環境會將要求分散至多個伺服器,並根據流量需求,對伺服器進行資源調度。您的應用程式是在自有的安全、可靠環境中執行,不受伺服器的硬體、作業系統或實體位置影響。

網路應用程式使用 App Engine 及其他元件

App Engine 為給您更多的選擇,提供了「彈性環境」。當您使用彈性環境時,應用程式會在可設定的 Compute Engine 執行個體上執行,但 App Engine 會為您管理託管環境。這表示您可以使用其他執行階段 (包括自訂執行階段),進而有擁更多的程式設計語言選項。您也可以充分運用 Compute Engine 所提供的彈性,比方說,您可從各種 CPU 和記憶體選項當中進行選擇。

程式設計語言

App Engine 標準環境提供預設執行階段,並且您可以使用支援的程式設計語言的特定版本來撰寫原始碼。

透過這個彈性環境,您可以使用任何支援的程式設計語言版本來撰寫原始碼。您可以自訂這些執行階段,或使用自訂 Docker 映像檔或 Dockerfile 提供自己的執行階段。

如果使用的程式設計語言是您的主要考量,則您需要判斷 App Engine 標準環境提供的執行階段是否符合您的需求。如果不符合,您就應該要考慮使用彈性環境。

如要判斷哪種環境最符合您應用程式的需求,請參閱選擇 App Engine 環境

各種程式語言的入門指南教學課程

下列教學課程可以協助您開始使用 App Engine 標準環境:

下列教學課程可協助您開始使用彈性環境:

使用 App Engine 儲存資料

App Engine 為您提供儲存資料的選項:

名稱 結構 一致性
Cloud Datastore 無結構定義 同步一致性,但執行全域查詢時除外。
Cloud SQL 關聯式 同步一致性。
Cloud Storage 檔案及其關聯的中繼資料 同步一致性,但在執行取得值區或物件清單的 list 作業時除外。

您也可以搭配標準環境使用多個第三方資料庫

如要進一步瞭解 App Engine 的儲存空間,請參閱選擇儲存空間選項,然後選取您想要使用的程式設計語言。

當您使用彈性環境時,可以使用標準環境提供的所有儲存空間選項,還能使用涵蓋範圍更廣泛的第三方資料庫。如要進一步瞭解彈性環境中的第三方資料庫,請參閱使用第三方資料庫

使用 App Engine 進行負載平衡和自動調度資源

在 App Engine 上進行建構作業時,系統會自動為您代管負載平衡和自動調度資源作業。

使用 App Engine 進行記錄和監控

在 App Engine 中,系統會自動記錄要求,而您可以在 GCP 主控台中查看這些記錄。App Engine 也可以搭配使用特定程式語言的標準程式庫運作,而這些程式庫會提供記錄功能,以及將記錄項目轉送至 GCP 主控台中的記錄檔。舉例來說,在 Python 中,您可以使用標準 Python 記錄模組;而在 Java 中,您可以使用 java.util.logging.Logger API。

Monitoring 提供監控 App Engine 應用程式的功能。您可以透過 GCP 主控台監控事件、運作時間檢查及其他詳細資料。

建構內容管理系統

提供網站內容,也就是意味著管理您的網站資產。Cloud Storage 所提供的全域存放區可用來儲存這些資產。一個常見的架構會將靜態內容部署至 Cloud Storage,然後同步至 Compute Engine 以轉譯動態頁面。Cloud Storage 可與許多第三方內容管理系統搭配運作,例如 WordPressDrupalJoomla。Cloud Storage 還提供與 Amazon S3 相容的 API,因此任何搭配 Amazon S3 運作的系統,都能搭配 Cloud Storage 運作。

如要查看內容管理系統的架構範例,請參閱內容管理

GCP 上的內容管理系統

後續步驟

  • 歡迎自行試用其他 Google Cloud Platform 功能。請參考我們的教學課程
本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
解決方案