服務擴充功能總覽

有了 Service Extensions,Cloud Load Balancing 和 Media CDN 等 Google Cloud 產品的使用者,就能直接將自訂程式碼插入資料路徑。這有助於您自訂這些產品的行為,以符合業務需求。本頁提供 Service Extensions 的高階總覽。

擴充功能類型

網路產品 (例如 Cloud Load Balancing 和 Media CDN) 中的資料路徑,可以視為資料處理階段的管道。服務擴充功能可讓您在上述一或多個階段中插入自訂邏輯。

服務擴充功能提供兩種插入自訂邏輯的方式:外掛程式和呼叫。

外掛程式

外掛程式可讓您在網路資料路徑中插入自訂程式碼。您可以使用 WebAssembly (Wasm)Proxy-Wasm ABI 建構這些外掛程式。

外掛程式會在 Google 管理的沙箱基礎架構上以 Wasm 模組的形式執行,類似於無伺服器基礎架構。外掛程式會在 Google 管理的運算資源上執行。功能受限,且執行階段規定嚴格。由於執行位置靠近資料層,因此能有效減少延遲。下圖說明外掛程式的運作方式。

外掛程式會內嵌自訂邏輯。
外掛程式包含內嵌的自訂邏輯 (按一下即可放大)。

如要進一步瞭解外掛程式,請參閱「外掛程式總覽」。

呼叫

呼叫可讓您在資料處理期間,使用 Cloud Load Balancing 向 Google 服務和使用者代管服務發出 Envoy gRPC 呼叫。

在使用者管理的 Compute VM、Google Kubernetes Engine (GKE) Pod (位於 GKE Multi-Cloud) 或內部部署環境中,回呼會以一般用途的 gRPC 伺服器形式執行。下圖顯示對服務的註解如何運作。

服務中的自訂邏輯會納入呼叫。
附註包含來自服務的自訂邏輯 (按一下即可放大)。

插註沒有執行階段限制,可視需要重複使用現有軟體。透過回呼,您可以享有全代管服務的優點,同時自訂服務,滿足特定工作負載的獨特需求。你只需要確認宣傳說明服務的可擴展性和可用性。

如要進一步瞭解呼叫,請參閱 Cloud Load Balancing 呼叫總覽

Cloud Load Balancing 擴充功能

Cloud Load Balancing 的 Service Extensions 可讓使用者在支援的應用程式負載平衡器,為負載平衡要求和回應處理路徑新增豐富的自訂項目。

詳情請參閱「Cloud Load Balancing 擴充功能總覽」。

外掛程式

Service Extensions 可讓您在 Cloud Load Balancing 處理路徑中新增預先發布的外掛程式,滿足自訂需求。

以下是外掛程式搭配 Cloud Load Balancing 的應用實例:

處理例外狀況
針對特定類別的回應,將用戶端重新導向至自訂錯誤頁面。
自訂記錄
將使用者定義的標頭或自訂資料記錄到 Cloud Logging。
新增標頭
建立適用於應用程式或特定客戶的新標頭。
在要求和回應中插入新標頭。
操控標頭
改寫現有要求和回應標頭,或在傳送至後端途中或回應用戶端時,覆寫用戶端標頭。
安全性
根據用戶端要求或回應標頭編寫自訂安全性政策,並在外掛程式中執行決策。
指令碼注入
從原始位置重新編寫 HTML,以整合 Google reCAPTCHA 或 Google Analytics 標記。
影響 Cloud CDN
修改 HTTP 要求特徵,影響自訂快取動態,並決定從 Cloud CDN 快取提供哪些內容。
轉送
重新編寫 HTTP 要求,影響後端服務的選擇,以便在邊緣做出更進階的轉送決策。

呼叫使用者管理的服務

Service Extensions 可讓支援的應用程式負載平衡器,從資料處理路徑將呼叫傳送至使用者管理的後端服務。

使用 Cloud Load Balancing 的標註功能,可執行下列操作:

  • 運算或儲存空間量任意
  • 需要維護狀態時
  • 如要使用外部服務,例如 BigQuery 或在任何位置代管的第三方應用程式

附註相當靈活,支援各種自訂項目。以下列舉幾個日常使用案例:

自訂路徑和流量管理
執行 HTTP 或網址重新導向。
根據應用程式專屬邏輯修改要求屬性 (例如標頭或網址),強制網址對應選擇與要求原先目標不同的後端服務。
根據複雜的應用程式專屬邏輯新增、移除或修改標頭,或重新編寫網址,然後再將流量轉送至後端服務。
根據要求的特定屬性,實作自訂工作階段相依性或黏性。
在「預覽」中,實作動態轉送,以程式輔助方式將房客對應至端點。
安全性與記錄
將酬載或自訂標頭中的自訂資訊記錄到 Logging 或自訂記錄解決方案。
使用安全工具或服務,包括自訂使用者驗證和授權支援。
驗證任意標頭和查詢參數,例如裝置 ID。
將要求和回應記錄到第三方記錄解決方案。
實作自訂使用者驗證和授權。
合作夥伴整合
整合安全性產品,例如 API Gateway 安全性、BOT 管理或網頁應用程式防火牆 (WAF)。
授權
豐富授權決策程序,或進一步限制 Google 提供的內建授權引擎所做出的授權決策。
混合多個授權系統的授權決策。
將 Google 授權引擎與更廣泛的授權生態系統和基礎架構 (包括外部政策引擎) 完美整合。

詳情請參閱「Cloud Load Balancing 和 Cloud CDN 擴充功能簡介」。

呼叫 Google 服務

Service Extensions 可讓支援的應用程式負載平衡器,從資料處理路徑向所選 Google 服務傳送呼叫。

您可以設定擴充功能來呼叫 Model Armor,在應用程式負載平衡器 (包括 GKE Inference Gateway) 上,統一對推論流量強制執行安全政策。

詳情請參閱「與 Google 服務整合」。

GKE 擴充功能

Google Kubernetes Engine (GKE) Gateway 支援使用擴充功能,在負載平衡處理路徑中新增自訂程式碼。您可以使用這些擴充功能自訂路徑、修改要求或回應酬載,以及與外部服務整合。

詳情請參閱「使用 Service Extensions 自訂 GKE Gateway 流量路徑」。

Media CDN 擴充功能

Media CDN 提供許多內建核心功能,可解決內容傳遞網路 (CDN) 最常見的用途。服務擴充功能可協助您滿足這些功能以外的幾項需求。

詳情請參閱「Media CDN 擴充功能總覽」。

Media CDN 外掛程式

Service Extensions 可讓您在 Media CDN 處理路徑中新增預先發布的外掛程式,滿足自訂需求。

以下列舉幾個可搭配 Media CDN 使用外掛程式的主要用途:

自訂
重新編寫要求網址。
將標頭值標準化,提升快取效能。
安全性與記錄
在直播活動期間,封鎖使用盜用權杖的使用者。
支援自訂使用者驗證和授權。
翻譯並實作自訂網址簽署。
自訂快取金鑰、應用程式專屬標頭或裝置類型。
將自訂變數記錄到 Cloud Logging。
指定目標與營利
透過 A/B 測試提高轉換次數。
導入自訂廣告指定目標。
免費提供試用使用模式。
合作夥伴整合
實作影片浮水印。
將影片和圖片調整到最佳狀態。