在 Compute Engine 上進行多區域部署

Last reviewed 2026-10-14 UTC

本文提供多層應用程式的參考架構,這類應用程式會在 Google Cloud的多個區域中,於 Compute Engine VM 上執行。您可以運用這個參考架構,有效率地將地端部署應用程式重新託管 (直接遷移) 至雲端,並盡可能減少應用程式變動。這份文件也說明為雲端應用程式建構多區域架構時,應考量的設計因素。這份文件的目標對象為雲端架構師。

架構

下圖顯示應用程式的架構,該應用程式在兩個 Google Cloud 區域部署的獨立堆疊中,以主動-主動模式執行。在每個區域中,應用程式會在三個可用區獨立運作。此架構符合Google Cloud 多區域部署原型,可確保 Google Cloud 拓撲能抵禦可用區和區域中斷,並為應用程式使用者提供低延遲。

使用全域負載平衡器的多區域架構

這個架構是以基礎架構即服務 (IaaS) 雲端模型為基礎。您可以在 Google Cloud中佈建所需的基礎架構資源 (運算、網路和儲存空間),並保留對作業系統、中介軟體和應用程式堆疊較高層級的完整控制權和責任。如要進一步瞭解 IaaS 和其他雲端模型,請參閱「PaaS、IaaS、SaaS 與 CaaS 有何不同?」一文。

上圖包含下列元件:

構成要素 Purpose
全域外部負載平衡器

全域外部負載平衡器會接收使用者要求,並將要求分配給應用程式。全域外部負載平衡器會宣傳單一任播 IP 位址,但實際上是在 Google Front End (GFE) 上實作大量 Proxy。用戶端要求會導向至最靠近用戶端的 GFE。

網頁層的區域代管執行個體群組 (MIG)

應用程式的網頁層會部署在區域性 MIG 中的 Compute Engine VM 上。這些 MIG 是全域負載平衡器的後端。

每個 MIG 包含三個不同可用區中的 Compute Engine VM。每個 VM 都會託管應用程式網路層的獨立執行個體。

區域性內部負載平衡器

各區域的內部負載平衡器會將網路層 VM 的流量,分配給該區域的應用程式層 VM。

應用程式層的區域性 MIG

應用程式層部署在 Compute Engine VM 上,這些 VM 屬於區域性 MIG。每個區域中的 MIG 都是該區域內部負載平衡器的後端。

每個 MIG 都包含三個不同可用區的 Compute Engine VM。每個 VM 都會託管應用程式層的獨立執行個體。

部署在 Compute Engine VM 的第三方資料庫

本文中的架構顯示部署在兩個區域 Compute Engine VM 上的第三方資料庫 (例如 PostgreSQL)。您可以為資料庫設定跨區域複製功能,並將每個區域中的資料庫設定為容錯移轉至其他區域的資料庫。複寫和容錯移轉功能取決於您使用的資料庫。

安裝及管理第三方資料庫需要額外投入心力,並產生複製、套用更新、監控及確保可用性等營運成本。您可以避免安裝及管理第三方資料庫的額外負擔,並使用多區域 Spanner 執行個體等全代管資料庫,充分運用內建的高可用性 (HA) 功能。

虛擬私有雲網路和子網路

架構中的所有 Google Cloud 資源都使用單一虛擬私有雲網路,該網路在兩個不同區域設有子網路。

您可以根據需求,選擇建構使用多個虛擬私有雲網路和子網路的架構。詳情請參閱「決定是否要建立多個虛擬私有雲網路」。

Cloud Storage 雙區域 bucket

資料庫備份會儲存在雙區域 Cloud Storage bucket 中。或者,您也可以使用備份和災難復原服務建立、儲存及管理資料庫備份。

使用的產品

這個參考架構使用下列 Google Cloud 產品:

  • Compute Engine:安全可靠且可自訂的運算服務,可讓您在 Google 基礎架構上建立及執行 VM。
  • Cloud Load Balancing:高效能、可擴充的全球和區域負載平衡器組合。
  • Cloud Storage:適用於多種資料類型的物件儲存庫,成本低廉且沒有限制。資料在 Google Cloud內外都能存取,且會複製到多個位置,以便提供備援機制。
  • 虛擬私有雲 (VPC):虛擬系統,可為 Google Cloud 工作負載提供全球可擴充的網路功能。虛擬私有雲包含虛擬私有雲網路對接、Private Service Connect、私人服務存取權和 Shared VPC。

用途

本節說明在 Compute Engine 上進行多區域部署的適用情境。

有效率地遷移地端部署應用程式

您可以運用這個參考架構建構 Google Cloud 拓撲 ,將地端應用程式重新託管 (lift-and-shift) 至雲端,並盡可能減少應用程式變更。本參考架構中的所有應用程式層級,都託管在 Compute Engine VM 上。這種做法可讓您有效率地將地端部署應用程式遷移至雲端,並充分運用 Google Cloud提供的成本效益、可靠性、效能和操作簡便性。

為分散各地的使用者提供高可用性

如果應用程式對業務至關重要,且必須具備高可用性和因應區域服務中斷的韌性,建議採用多區域部署。如果某個區域因任何原因而無法使用 (即使是天災造成的大規模中斷),應用程式使用者也不會遇到任何停機時間。流量會轉送至其他可用區域中的應用程式。如果資料是同步複製,復原時間目標 (RTO) 接近於零。

應用程式使用者享有低延遲

如果使用者位於特定地理區域 (例如某個洲),您可以使用多區域部署,在可用性和效能之間取得最佳平衡。當其中一個區域發生中斷時,全域負載平衡器會將源自該區域的要求傳送至其他區域。使用者不會感受到明顯的成效影響,因為這些區域位於同一地理區域內。

設計替代方案

上述架構使用全域負載平衡器,支援特定功能,可提高部署作業的可靠性,例如使用 Cloud CDN 進行邊緣快取。本節將介紹另一種架構,使用區域負載平衡器和 Cloud DNS。這個替代架構支援下列額外功能:

  • 在指定區域終止傳輸層安全標準 (TLS)。
  • 從指定區域提供內容。不過,該區域在特定時間可能不是成效最佳的區域。
  • 使用直通式網路負載平衡器時,可支援更多連線通訊協定。

如要進一步瞭解區域和全域負載平衡器之間的差異,請參閱「全域與區域負載平衡」和「運作模式」。

使用區域性負載平衡器和 DNS 的多區域架構。

前述圖表中的替代架構可有效防範可用區和區域中斷。Cloud DNS 公開區域會將使用者要求轉送至適當區域。區域性外部負載平衡器會接收使用者要求,並將要求分配至各區域中應用程式的網路層執行個體。這個架構中的其他元件,與以全域負載平衡器為基礎的架構中的元件相同。

設計須知

本節提供指引,協助您使用這項參考架構,開發符合系統設計、安全性、可靠性、作業效率、成本和效能等特定需求的架構。

為工作負載建構架構時,請參考 Google Cloud Well-Architected Framework 的最佳做法和建議。

系統設計

本節提供指引,協助您為多區域部署作業選擇區域,並選取適當的 Google Cloud服務。 Google Cloud

區域選項

選擇 Google Cloud 應用程式必須部署的區域時,請考量下列因素和需求:

部分因素和規定可能需要取捨。舉例來說,最符合成本效益的區域可能不是碳足跡最低的區域。詳情請參閱「選擇 Compute Engine 區域的最佳做法」。

運算基礎架構

本文件中的參考架構會針對應用程式的特定層級使用 Compute Engine VM。您可以根據應用程式的需求,選擇其他 Google Cloud 運算服務:

  • 容器:您可以在 Google Kubernetes Engine (GKE) 叢集中執行容器化應用程式。GKE 是容器自動化調度管理引擎,可自動部署、調度資源及管理容器化應用程式。
  • 無伺服器:如果您希望將 IT 資源投入資料和應用程式,而非設定及運作基礎架構資源,可以改用 無伺服器服務,例如 Cloud Run。

決定是否使用 VM、容器或無伺服器服務時,必須在設定彈性和管理工作之間做出取捨。VM 和容器提供更多設定彈性,但您必須負責管理資源。在無伺服器架構中,您會將工作負載部署至預先設定的平台,只需進行最少量的管理工作。如要進一步瞭解如何為Google Cloud中的工作負載選擇合適的運算服務,請參閱「在 Google Cloud上託管應用程式」。

儲存服務

本文所示的架構在所有層級都使用區域永久磁碟磁碟區。永久磁碟可在區域內的兩個可用區之間同步複製資料。

Google Cloud Hyperdisk 的效能、彈性和效率都優於 Persistent Disk。使用 Hyperdisk Balanced 時,您可以分別動態佈建 IOPS 和處理量,並根據各種工作負載調整磁碟區。

如要使用低成本儲存空間,並在多個位置複製資料,可以使用 Cloud Storage 區域、雙區域或多區域 bucket。

  • 區域 bucket 中的資料會同步複製到該區域的所有可用區。
  • 雙區域或多區域 bucket 中的資料會以備援的形式儲存到至少兩個不同的地理位置。中繼資料會跨區域同步寫入,資料則會以非同步方式複製。對於雙區域 bucket,您可以使用強化型複製功能,確保物件複製到區域組合,並將復原點目標 (RPO) 控制在 15 分鐘內。詳情請參閱「資料可用性和耐久性」。

如要儲存區域內多個 VM 共用的資料 (例如網頁層或應用程式層中所有 VM 的資料),可以使用 Filestore 區域性執行個體。儲存在 Filestore 區域性執行個體的資料,會同步複製到該區域內的三個可用區。這種複製機制可確保高可用性,並防範可用區中斷問題。您可以在 Filestore 執行個體中儲存共用設定檔、常用工具和公用程式,以及集中化記錄,並在多個 VM 上掛接執行個體。為防範區域中斷,您可以將 Filestore 執行個體複製到其他區域。詳情請參閱「執行個體複製」。

如果資料庫是 Microsoft SQL Server,建議使用 SQL Server 適用的 Cloud SQL。如果 Cloud SQL 不支援您的設定需求,或您需要存取作業系統,可以部署 Microsoft SQL Server 容錯移轉叢集執行個體 (FCI)。在此情境下,您可以透過全代管的 Google Cloud NetApp Volumes,為資料庫提供持續可用性 (CA) SMB 儲存空間。

為工作負載設計儲存空間時,請考量功能特性、韌性需求、預期效能和成本目標。詳情請參閱「針對雲端工作負載設計最佳的儲存空間策略」。

資料庫服務

本文件中的參考架構使用部署在 Compute Engine VM 上的第三方資料庫。安裝及管理第三方資料庫需要投入心力和成本,才能執行套用更新、監控及確保可用性、執行備份,以及從故障中復原等作業。

您可以使用 Cloud SQL、AlloyDB for PostgreSQL、Bigtable、Spanner 或 Firestore 等全代管資料庫服務,避免安裝及管理第三方資料庫所需的心力和成本。這些 Google Cloud 資料庫服務提供服務正常運作時間服務水準協議 (SLA),並包含可擴充性和可觀測性的預設功能。

如果工作負載需要 Oracle 資料庫,您可以將資料庫部署在 Compute Engine VM 上,或使用 Oracle Database@Google Cloud。詳情請參閱「 Google Cloud中的 Oracle 工作負載」。

為多區域部署作業選擇及設定資料庫時,請考量應用程式對跨區域資料一致性的需求,並留意效能和成本之間的取捨。

  • 如果應用程式需要同步一致 (所有使用者隨時都必須讀取相同資料),則資料必須在架構中的所有區域同步複製。不過,同步複製可能會導致成本增加和效能降低,因為寫入的任何資料都必須在區域間即時複製,才能用於讀取作業。
  • 如果應用程式可容許最終一致性,則可以非同步複製資料。由於資料不需要跨區域同步複製,因此可以提升效能。不過,不同區域的使用者可能會讀取不同的資料,因為在提出要求時,資料可能尚未完全複製。

網路設計

選擇符合業務和技術需求的網路設計。您可以使用單一或多個虛擬私有雲網路。詳情請參閱下列說明文件:

安全性、隱私權和法規遵循

本節說明使用這項參考架構,在Google Cloud 中設計及建構多區域拓撲時,應考量的因素,以符合工作負載的安全性、隱私權和法規遵循要求。

防範外部威脅

如要保護應用程式免受分散式阻斷服務 (DDoS) 攻擊和跨網站指令碼攻擊 (XSS) 等威脅,可以使用 Google Cloud Armor 安全性政策。每項政策都是一組規則,指定應評估的特定條件,以及符合條件時要採取的動作。舉例來說,規則可以指定:如果傳入流量的來源 IP 位址符合特定 IP 位址或 CIDR 範圍,則必須拒絕該流量。您也可以套用預先設定的網頁應用程式防火牆 (WAF) 規則。詳情請參閱「安全性政策總覽」。

VM 的外部存取權

在本文件說明的參考架構中,Compute Engine VM 不需要來自網際網路的傳入存取權。請勿為 VM 指派外部 IP 位址。 Google Cloud 只有私人內部 IP 位址的資源仍可使用 Private Service Connect 或 Private Google Access,存取特定 Google API 和服務。詳情請參閱「服務的私人存取權選項」。

如要從 Google Cloud 只有私人 IP 位址的資源 (例如本參考架構中的 Compute Engine VM) 啟用安全輸出連線,可以使用 Secure Web Proxy 或 Cloud NAT。

服務帳戶權限

對於架構中的 Compute Engine VM,建議您建立專屬服務帳戶,並指定服務帳戶可存取的資源,而非使用預設服務帳戶。預設服務帳戶的權限範圍很廣,包括一些可能不需要的權限。您可以為專屬服務帳戶量身打造權限,只授予必要權限。詳情請參閱「限制服務帳戶權限」。

SSH 安全性

如要強化架構中 Compute Engine VM 的 SSH 連線安全性,請實作 Identity-Aware Proxy (IAP) 和 Cloud OS Login API。IAP 可根據使用者身分和 Identity and Access Management (IAM) 政策控管網路存取權。透過 Cloud OS 登入 API,您可以根據使用者身分和 IAM 政策控管 Linux SSH 存取權。如要進一步瞭解如何管理網路存取權,請參閱「控管 SSH 登入存取權的最佳做法」。

磁碟加密

根據預設,儲存在 Persistent Disk 磁碟區中的資料會使用Google-owned and Google-managed encryption keys加密。如要進一步保護 Google-owned and managed key ,您可以使用自己在 Cloud Key Management Service (Cloud KMS) 中擁有及管理的金鑰,選擇加密。詳情請參閱「關於磁碟加密」和「使用 Cloud KMS 金鑰保護資源」。

網路安全

如要控管架構中資源之間的網路流量,您必須設定適當的 Cloud Next Generation Firewall (NGFW) 政策。

資料落地考量事項

您可以運用區域負載平衡器建構多區域架構,協助您滿足資料落地規定。舉例來說,某個歐洲國家/地區可能要求所有使用者資料都必須儲存在歐洲境內的資料中心,且只能在歐洲境內存取。為滿足這項需求,您可以使用以區域性負載平衡器為基礎的架構。在該架構中,應用程式在Google Cloud 歐洲區域中執行,您可以使用 Cloud DNS 搭配設定地理限制的路由政策,透過區域性負載平衡器轉送流量。如要符合資料庫層級的資料落地規定,請使用分片架構,而非跨區域複製。這種做法會隔離各區域的資料,但無法為資料庫實作跨區域高可用性和容錯移轉。

其他安全性考量

建構工作負載架構時,請參考「企業基礎藍圖」和「Google Cloud Well-Architected Framework:安全性、隱私權和法規遵循」中,平台層級的安全最佳做法和建議。

可靠性

本節說明使用這項參考架構,在 Google Cloud中為多區域部署項目建構及運作可靠基礎架構時,應考量的設計因素。

基礎架構中斷時的穩健性

在多區域部署架構中,如果基礎架構堆疊中的任何個別元件故障,只要每個層級中至少有一個運作正常的元件,且具備足夠的容量,應用程式就能處理要求。舉例來說,如果網路伺服器執行個體故障,負載平衡器會將使用者要求轉送至其他可用的網路伺服器執行個體。如果託管網路伺服器或應用程式伺服器執行個體的 VM 當機,MIG 會自動重新建立 VM。

如果發生可用區中斷,負載平衡器不會受到影響,因為它是區域性資源。可用區中斷可能會影響個別 Compute Engine VM。但由於 VM 位於區域性 MIG 中,應用程式仍可正常運作並回應。區域性 MIG 會確保系統自動建立新的 VM,維持設定的 VM 數量下限。Google 解決可用區服務中斷問題後,您必須確認應用程式在所有部署可用區中正常運作。

如果某個區域的所有可用區都發生服務中斷,或是發生區域性服務中斷,另一個區域的應用程式仍可正常運作並回應要求。全域外部負載平衡器會將流量導向未受中斷影響的區域。Google 解決區域服務中斷問題後,請務必驗證應用程式在服務中斷的區域是否正常運作。

如果這個架構中的兩個區域都發生中斷,應用程式就無法使用。您必須等待 Google 解決服務中斷問題,然後確認應用程式是否正常運作。

MIG 自動調度資源

在多個區域性 MIG 上執行應用程式時,即使發生獨立可用區或區域中斷情形,應用程式仍可正常運作。無狀態 MIG 的自動調度資源功能可讓您維持應用程式可用性和效能,並達到可預測的程度。

如要控管無狀態 MIG 的自動調度資源行為,可以指定目標使用率指標,例如平均 CPU 使用率。您也可以為無狀態 MIG 設定依排程自動調度資源。有狀態 MIG 無法自動調度資源。詳情請參閱「自動調度執行個體群組資源」。

MIG 大小限制

決定 MIG 大小時,請考量 MIG 可建立的 VM 數量預設值和上限。詳情請參閱「在 MIG 中新增及移除 VM」。

VM 自動修復

有時,託管應用程式的 VM 可能正在運作且可用,但應用程式本身可能有問題。應用程式可能會凍結、異常終止或記憶體不足。如要確認應用程式是否正常回應,您可以設定以應用程式為基礎的健康狀態檢查,做為 MIG 自動修復政策的一部分。如果特定 VM 上的應用程式沒有回應,MIG 會自動修復該 VM。如要進一步瞭解如何設定自動修復功能,請參閱「關於修復高可用性 VM」。

VM 刊登位置

在本文件說明的架構中,應用程式層和網路層會在分散於多個可用區的 Compute Engine VM 上執行。這種分配方式可確保應用程式能有效應對可用區服務中斷。

如要提升架構的穩定性,您可以建立分散配置政策,並套用至 MIG 範本。MIG 建立 VM 時,會將各可用區內的 VM 放在不同的實體伺服器 (稱為「主機」) 上,因此 VM 不會因個別主機故障而受到影響。詳情請參閱「建立並將分散式刊登位置政策套用至 VM」。

VM 容量規劃

如要確保在需要佈建 VM 時,Compute Engine VM 的容量充足,可以建立預留項目。預留項目可確保在特定可用區中,為您選擇的機型預留指定數量的 VM 容量。預留項目可以專屬於某個專案,也可以在多個專案之間共用。如要進一步瞭解預留項目,請參閱「選擇預留項目類型」。

有狀態儲存空間

應用程式設計的最佳做法是避免需要有狀態的本機磁碟。但如有這類需求,您可以將永久磁碟設為有狀態,確保 VM 修復或重建時資料不會遺失。不過,建議您將開機磁碟設為無狀態,以便將磁碟更新至最新映像檔,並套用新版本和安全性修補程式。詳情請參閱「在 MIG 中設定有狀態永久磁碟」。

資料持久性

您可以使用備份和災難復原,建立、儲存及管理 Compute Engine VM 的備份。備份和災難復原會以應用程式可讀取的原始格式儲存備份資料。必要時,您可以直接使用長期備份儲存空間中的資料,將工作負載還原至正式環境,不必準備或移動資料。

Compute Engine 提供下列選項,協助您確保儲存在 Persistent Disk 磁碟區的資料耐久性:

資料庫可用性

如要為部署在 Compute Engine VM 上的資料庫實作跨可用區容錯移轉,您需要一種機制來識別主要資料庫的故障,以及容錯移轉至待命資料庫的程序。容錯移轉機制的具體細節取決於您使用的資料庫。您可以設定觀察器執行個體,偵測主要資料庫的故障情形,並安排容錯移轉。您必須適當設定容錯移轉規則,避免發生腦裂情況,並防止不必要的容錯移轉。如需可用於實作 PostgreSQL 資料庫容錯移轉的架構範例,請參閱「Compute Engine 上 PostgreSQL 叢集的高可用性架構」。

更多可靠性考量

為工作負載建構雲端架構時,請參閱下列說明文件,瞭解與可靠性相關的最佳做法和建議:

成本最佳化

本節提供相關指引,協助您最佳化使用此參考架構建構的多區域 Google Cloud 拓撲的設定和營運成本。

VM 機型

為協助您達到最佳 VM 執行個體資源使用率,Compute Engine 會提供機器類型建議。根據建議選擇符合工作負載運算需求的機器類型。如果工作負載的資源需求可預測,您可以使用自訂機型,根據需求自訂機型並節省費用。

VM 佈建模型

如果應用程式具備容錯能力,則 Spot VM 可協助您降低應用程式和網頁層中 VM 的 Compute Engine 費用。Spot VM 的費用遠低於一般 VM。不過,Compute Engine 可能會先占停止或刪除 Spot VM,以取回資源。

Spot VM 適用於可容許先占,且沒有高可用性需求的批次工作。Spot VM 提供的機器類型、選項和效能與一般 VM 相同。不過,如果可用區的資源容量有限,MIG 可能無法自動水平擴展 (也就是建立 VM),直到所需容量再次可用為止。

VM 資源使用率

無狀態 MIG 的自動調度資源功能可讓應用程式妥善處理增加的流量,並在資源需求降低時節省成本。有狀態 MIG 無法自動調度資源。

第三方授權

將第三方工作負載遷移至 Google Cloud時,您或許可以透過自備授權 (BYOL) 降低成本。舉例來說,如要部署 Microsoft Windows Server VM,您可以建立並使用自訂 Windows BYOL 映像檔,而不必使用進階映像檔,以免產生第三方授權的額外費用。然後僅須為您在 Google Cloud上使用的 VM 基礎架構付費。 這項策略可協助您持續從現有的第三方授權投資中獲利。如果您決定採用 BYOL 方法,下列建議可能有助於降低成本:

  • 使用自訂機型,獨立於記憶體佈建所需數量的運算 CPU 核心。這樣一來,第三方授權費用就會限制在您需要的 CPU 核心數量。
  • 停用多執行緒並行 (SMT),將每個核心的 vCPU 數量從 2 個減少為 1 個。

如果您在 Compute Engine VM 上部署 Microsoft SQL Server 等第三方資料庫,則必須考量第三方軟體的授權費用。使用 Cloud SQL 等代管資料庫服務時,服務費用會包含資料庫授權費用。

更多費用注意事項

建構工作負載架構時,也請考量「Google Cloud Well-Architected Framework:成本最佳化」中的一般最佳做法和建議。

提升作業效率

本節說明使用這個參考架構設計及建構多區域 Google Cloud拓撲時,應考量的因素,以便有效率地運作。

VM 設定更新

如要更新 MIG 中 VM 的設定 (例如機型或開機磁碟映像檔),請使用所需設定建立新的執行個體範本,然後將新範本套用至 MIG。MIG 會使用您選擇的更新方法 (自動或選擇性) 更新 VM。請根據可用性和作業效率需求,選擇合適的方法。如要進一步瞭解這些 MIG 更新方法,請參閱「在 MIG 中套用新的 VM 設定」。

VM 映像檔

對於 VM,建議您建立並使用自訂 OS 映像檔,其中包含應用程式所需的設定和軟體,而非使用 Google 提供的公開映像檔。您可以將自訂映像檔歸類為自訂映像檔系列。映像檔系列一律會指向該系列中最新的映像檔,因此執行個體範本和指令碼可以使用該映像檔,您不必更新特定映像檔版本的參照。您必須定期更新自訂映像檔,納入 OS 供應商提供的安全性更新和修補程式。

確定性執行個體範本

如果您用於 MIG 的執行個體範本包含開機指令碼,可安裝第三方軟體,請務必在指令碼中明確指定軟體安裝參數,例如軟體版本。否則,當 MIG 建立 VM 時,VM 上安裝的軟體可能不一致。舉例來說,如果執行個體範本包含安裝 Apache HTTP Server 2.4 (apache2 套件) 的開機指令碼,請務必在指令碼中指定要安裝的確切 apache2 版本,例如 2.4.69 版。詳情請參閱「確定性執行個體範本」。

更多作業考量

建構工作負載架構時,請參考Google Cloud Well-Architected Framework:卓越營運中,有關作業效率的一般最佳做法和建議。

效能最佳化

本節說明使用此參考架構在Google Cloud 中設計及建構多區域拓撲時,應考量的因素,以符合工作負載的效能需求。

運算效能

Compute Engine 提供多種預先定義和可自訂的機型,適用於在 VM 上執行的工作負載。請根據效能需求選擇合適的機器類型。詳情請參閱「機器家族資源與比較指南」。

VM 多執行緒

您分配給 Compute Engine VM 的每個虛擬 CPU (vCPU) 都會實作為單一硬體多執行緒。根據預設,兩個 vCPU 會共用一個實體 CPU 核心。如果應用程式涉及高度平行運算,或執行浮點運算 (例如基因序列分析和財務風險模型),您可以減少在每個實體 CPU 核心上執行的執行緒數量,藉此提升效能。詳情請參閱「設定每個核心的執行緒數量」。

VM 多執行緒可能會對某些第三方軟體 (例如資料庫) 產生授權影響。詳情請參閱第三方軟體的授權說明文件。

網路服務級別

網路服務級別可協助您盡可能提高工作負載的網路成本效益和效能。您可以選擇進階級或標準級。進階級透過 Google 的全球骨幹網路傳輸流量,盡可能減少封包遺失並降低延遲。標準級會使用對接、網際網路服務供應商 (ISP) 或轉送網路,在最靠近 Google Cloud 工作負載執行所在區域的邊緣連接點 (PoP) 傳送流量。為達到最佳效能,建議使用進階級。如要盡可能降低成本,建議使用標準級。

網路效能

如果工作負載需要應用程式和網路層內的 VM 間網路延遲時間較短,您可以建立密集配置政策,並套用至用於這些層的 MIG 範本。MIG 建立 VM 時,會將 VM 放在彼此靠近的實體伺服器上。密集配置政策有助於提升 VM 間的網路效能,而分散配置政策則可提高 VM 可用性,如先前所述。為在網路效能和可用性之間取得最佳平衡,建立密集配置政策時,您可以指定 VM 之間的距離。詳情請參閱「刊登位置政策總覽」。

Compute Engine 對每個 VM 的輸出網路頻寬設有限制。這項限制取決於 VM 的機型,以及流量是否透過與來源 VM 相同的虛擬私有雲網路轉送。如果 VM 採用特定機型,您可以啟用 Tier_1 網路,提高輸出頻寬上限,進而提升網路效能。

快取

如果應用程式提供靜態網站資產,且架構包含全域外部應用程式負載平衡器,您可以使用 Cloud CDN,將經常存取的靜態內容快取至較靠近使用者的位置。Cloud CDN 可協助您提升使用者效能、減少後端的基礎架構資源用量,以及降低網路傳輸成本。詳情請參閱「提高負載平衡的網站效能並加強網路保護機制」。

更多效能注意事項

為工作負載建構架構時,請參考「Google Cloud Well-Architected Framework:效能最佳化」中提供的通用最佳做法和建議。

後續步驟

貢獻者

作者:

其他貢獻者: