本節的Google Cloud 部署作業原型指南說明瞭全球部署作業原型。
在以全球部署原型為基礎的架構中,應用程式會在全球各地的多個Google Cloud 區域中執行。您可以將應用程式部署為分散式位置無關堆疊,或部署為多個區域隔離堆疊。無論是哪種情況,全域任播負載平衡器都會將流量分配至適當的區域。應用程式會將資料寫入所有區域都可用的同步複製資料庫,並從中讀取資料,例如採用多區域設定的 Spanner。應用程式堆疊的其他元件也可以是全域元件,例如快取和物件儲存空間。
下圖顯示全球部署原型的位置無關分散式變體:
上圖顯示不瞭解位置的應用程式堆疊,其中前端和後端執行個體 (通常是微服務) 分散在三個 Google Cloud 區域的多個可用區。全域任播負載平衡器會將連入流量分配至適當的前端執行個體。這項分配作業會根據執行個體的可用性、容量,以及與流量來源的地理位置鄰近程度而定。跨區域內部負載平衡器會根據前端執行個體的可用性和容量,將流量分配給適當的後端執行個體。應用程式使用的資料庫會同步複製,並在各區域提供服務。
下圖顯示全域部署原型變體,其中應用程式堆疊在區域中隔離:
上圖顯示在兩個 Google Cloud 區域的多個可用區中執行的區域隔離應用程式堆疊。這個拓撲與多區域部署原型類似,但使用的是全域 Anycast 負載平衡器,而非 DNS 轉送。全域負載平衡器會將傳入流量分配至最接近使用者的區域前端。兩個應用程式堆疊都會寫入資料,並從同步複製的資料庫讀取資料,且兩個區域都可存取該資料庫。如果其中一個地區發生中斷,全域負載平衡器會將使用者要求傳送至另一個地區的前端。
用途
以下各節提供用途範例,說明全球部署原型是適當的選擇。
高可用性應用程式,吸引全球觀眾
如果應用程式服務的對象遍及全球,因此需要高可用性,且能抵禦多個區域的服務中斷,建議採用全球部署原型。
有機會最佳化成本並簡化作業
透過全域部署原型,您可以使用高可用性的全域資源,例如全域負載平衡器和全域資料庫。與多區域部署相比,全球部署可協助您降低成本並簡化作業,因為您佈建及管理的資源較少。
設計須知
建構以全球部署原型為基礎的架構時,請考量下列設計因素。
儲存空間、複製和網路費用
在全球分散式架構中,跨位置的網路流量可能比區域部署高。您也可能會儲存及複製更多資料。如果架構是以全球部署原型為基礎,請考慮資料儲存和網路的費用可能會較高。對於關鍵業務應用程式,全球分散式架構的可用性優勢可能勝過較高的網路和儲存成本。
管理全域資源的變更
您可運用高可用性的全球資源,進一步節省成本並簡化作業。不過,為確保全域資源不會成為單一故障點 (SPOF),您必須謹慎管理全域資源的設定變更。
參考架構
如需可用於設計全球部署作業的參考架構,請參閱「使用 Compute Engine 和 Spanner 進行全球部署」。