API 管理的架構價值
現代雲端架構中,API 不只是技術介面——它是產品。無論是對外開放給合作夥伴的公共 API,還是內部微服務之間的通訊協定,API 的設計品質直接決定系統的可擴展性、安全性和商業價值。
API-first Design 的核心理念:先設計 API 合約(Contract),再實作後端邏輯。這確保了前後端團隊可以平行開發,也讓 API 成為組織對外的數位門面。
| API 類型 | 消費者 | 管理重點 |
|---|---|---|
| External API | 合作夥伴、第三方開發者 | 身份驗證、流量配額、版本管理、開發者文件 |
| Internal API | 組織內部微服務 | 服務發現、延遲監控、一致性治理 |
| Partner API | 特定合作夥伴 | 存取控制、SLA 保證、使用量追蹤與計費 |
身為架構師,你要為每種類型的 API 選擇合適的管理方案——GCP 提供了三個層級的工具,從輕量到企業級各有定位。
Apigee:企業級 API 管理平台
Apigee 是 Google Cloud 最完整的 API 管理解決方案,適合需要將 API 作為商業產品經營的企業。
核心能力
- API Proxies — 在後端服務前建立代理層,實現流量控制、安全策略和轉換邏輯,後端無需修改程式碼
- Developer Portal — 自助式開發者入口網站,提供 API 文件、互動式測試工具和金鑰申請流程
- Analytics Dashboard — 即時 API 使用分析:流量趨勢、延遲分佈、錯誤率、開發者活躍度
- Monetization — 內建 API 計費引擎,支援按量計費、訂閱制、免費方案等多種商業模式
安全策略
Apigee 的 Policy 機制讓你以聲明式方式套用安全規則:
- OAuth 2.0 / API Key — 驗證呼叫方身份
- Quota — 限制單一開發者在特定時間窗口內的請求次數(如每月 10,000 次)
- Spike Arrest(Rate Limiting) — 防止突發流量壓垮後端,平滑化請求速率
- Threat Protection — SQL injection、XML/JSON 攻擊的自動偵測與阻擋
Apigee X vs Hybrid
| 部署模式 | 架構 | 適用場景 |
|---|---|---|
| Apigee X | 完全雲端原生,Google 代管 | 新建 API 平台,追求最低維運負擔 |
| Apigee Hybrid | 管理面在雲端,runtime 在本地或其他雲 | 需要資料在地化或多雲部署的企業 |
💡 考試小提示:題目描述「需要 API 計費、開發者入口和完整生命週期管理」,答案指向 Apigee。它是唯一內建 Monetization 的選項。
API Gateway:輕量級無伺服器閘道
API Gateway 是 GCP 的輕量級 API 管理方案,專為 serverless 後端設計。它使用 OpenAPI Specification 定義 API,自動處理認證、速率限制和監控。
支援的後端:Cloud Run functions、Cloud Run、App Engine,以及任何可透過 HTTP 存取的服務。
核心特點:
- 全代管、自動擴縮,無需管理基礎設施
- 內建 Google Cloud IAM 和 API Key 認證
- 自動產出 Cloud Logging 和 Cloud Monitoring 指標
- 以 OpenAPI 2.0(Swagger)規範驅動設定
Cloud Endpoints:OpenAPI / gRPC 原生支援
Cloud Endpoints 透過 ESP(Extensible Service Proxy) 或 ESPv2(基於 Envoy)部署在應用前方,提供 API 管理能力。
獨特優勢:
- 同時支援 OpenAPI 和 gRPC 協定
- ESP 以 sidecar 模式部署,與應用容器緊密整合
- 支援部署在 GKE、Compute Engine、Cloud Run 等任何運算平台
- 原生整合 Service Infrastructure(Google 內部的 API 管理基礎設施)
API 策略選型
這是 PCA 考試的高頻考點——你必須根據需求選擇正確的 API 管理方案:
| 面向 | Apigee | API Gateway | Cloud Endpoints |
|---|---|---|---|
| 定位 | 企業級 API 產品平台 | 輕量級 serverless 閘道 | 開發者導向的 API proxy |
| 開發者入口 | 內建完整 Portal | 不支援 | 不支援 |
| Monetization | 內建計費引擎 | 不支援 | 不支援 |
| gRPC 支援 | 有限 | 不支援 | 原生支援 |
| Analytics | 企業級分析儀表板 | 基本(Cloud Monitoring) | 基本(Cloud Monitoring) |
| 成本 | 高(企業訂閱) | 低(按請求計費) | 低 |
| 複雜度 | 高 | 低 | 中 |
| 適用場景 | 對外商業 API、合作夥伴生態系 | Serverless 後端的簡單 API 管理 | GKE 微服務間 gRPC API |
💡 考試小提示:「微服務之間使用 gRPC 通訊,需要 API 認證和監控」選 Cloud Endpoints;「對外提供 REST API 給第三方開發者」選 Apigee;「Cloud Run functions 後端需要簡單 API 管理」選 API Gateway。
Cloud Deploy 進階策略
在第 16 課中我們介紹了 Cloud Deploy 的基礎概念,這裡深入探討進階部署模式:
Multi-target 與 Parallel Deployments
- Multi-target — 單一 delivery pipeline 同時部署至多個目標(如多個 GKE cluster 或 Cloud Run service),確保所有區域版本一致
- Parallel Deployments — 多個目標同時執行部署,而非依序推進,大幅縮短全球部署時間
Custom Targets 與 Deploy Hooks
- Custom Targets — 除了 GKE 和 Cloud Run,可透過自訂 render 和 deploy 動作部署至任何目標平台(如 Terraform、Helm Charts)
- Deploy Hooks — 在部署前後執行自訂腳本:預部署驗證(pre-deploy)、部署後健康檢查(post-deploy)、回滾前的資料保存
Automation Rules
Cloud Deploy 支援自動化規則,實現「零觸碰部署」:
- 自動推進(Auto-promote) — 當前一個環境驗證成功後,自動觸發下一個環境的部署
- 自動回滾(Auto-rollback) — 偵測到部署失敗或指標異常時,自動回滾至上一個穩定版本
Gemini Cloud Assist:AI 驅動的智慧維運
Gemini Cloud Assist(PCA v6.1 新增考試範圍)是 Google Cloud Console 內建的 AI 助手,它不只是聊天機器人,而是能理解你的雲端環境並提供具體建議的智慧維運夥伴。
核心場景
- 架構建議 — 根據工作負載分析,推薦最佳的服務組合和設定參數(如「你的 Cloud Run 服務記憶體使用率長期低於 30%,建議從 2GiB 降至 1GiB」)
- 故障排除 — 用自然語言描述問題,Gemini 自動關聯 Cloud Logging、Error Reporting 和 Monitoring 指標,給出根因分析和修復步驟
- 程式碼協助 — 在 Cloud Shell Editor 中提供 IaC(Terraform、gcloud)的程式碼補全和最佳實踐建議
💡 考試小提示:PCA v6.1 將 Gemini Cloud Assist 列入考試範圍。當題目提到「AI 輔助維運」、「智慧化架構建議」或「自然語言故障排除」,記得考慮這個選項。
版本管理與向後相容
API 版本管理是避免破壞性變更影響消費者的關鍵策略:
版本化策略
| 策略 | 範例 | 優勢 | 劣勢 |
|---|---|---|---|
| URL 路徑版本 | /v1/users、/v2/users | 直觀明確,易於路由 | URL 膨脹,難以維護 |
| Header 版本 | Accept: application/vnd.api.v2+json | URL 乾淨 | 不易發現和除錯 |
| Query Parameter | /users?version=2 | 簡單彈性 | 容易被忽略,快取困難 |
變更管理
- Non-breaking Changes(向後相容) — 新增可選欄位、新增 endpoint、擴展列舉值——不需要新版本
- Breaking Changes(破壞性變更) — 移除欄位、變更資料型態、修改必填邏輯——必須發佈新版本
- Deprecation Policy — 公告棄用時間表(如「v1 將在 2027-01-01 停止服務」),給消費者至少 6 個月的遷移窗口
實戰情境
情境一:合作夥伴 API 計費平台
背景:Cymbal Financial 要將內部的信用評分 API 開放給合作夥伴銀行使用,需要完整的存取控制、使用量追蹤和按量計費機制。
架構決策:
- Apigee X 作為 API 管理平台——提供 OAuth 2.0 認證、Quota 限制(每合作夥伴每月 100,000 次)和 Spike Arrest(每秒 50 次)
- Developer Portal 讓合作夥伴自助註冊、取得 API 金鑰、查看互動式文件和使用量儀表板
- Monetization 設定階梯計費:前 10,000 次免費,超出部分每千次 $2.5
- URL 路徑版本化(
/v1/credit-score)搭配嚴格的 deprecation policy,確保向後相容 - Analytics 監控各合作夥伴的使用模式,識別異常呼叫行為
情境二:內部微服務 API 治理
背景:一個擁有 30+ 微服務的平台團隊,發現 API 品質參差不齊、缺乏統一認證機制,服務間呼叫經常因為介面變更而中斷。
架構決策:
- Cloud Endpoints(ESPv2) 部署在每個 GKE 微服務前方,統一處理認證(Service Account JWT)和監控
- 所有 API 必須提供 OpenAPI 或 gRPC proto 定義,存放在中央 Git 倉庫作為合約
- Cloud Deploy 搭配 Automation Rules,merge 到 main 後自動推進至 dev → staging → prod
- Deploy Hooks 在預部署階段執行 API 合約相容性檢查——偵測到 breaking changes 自動阻擋部署
- Gemini Cloud Assist 協助 SRE 團隊快速定位跨服務呼叫鏈中的延遲瓶頸
重點整理
- API-first Design 將 API 視為產品,根據消費者類型(External、Internal、Partner)選擇管理方案
- Apigee 是企業級全功能平台——API Proxy、Developer Portal、Analytics、Monetization 一站式解決
- API Gateway 適合 serverless 後端的輕量 API 管理;Cloud Endpoints 適合 gRPC 微服務場景
- 選型關鍵:需要計費和開發者入口 → Apigee;簡單 serverless 管理 → API Gateway;gRPC 支援 → Cloud Endpoints
- Cloud Deploy 進階:Multi-target 並行部署、Custom Targets 擴展性、Automation Rules 實現零觸碰部署
- Gemini Cloud Assist(v6.1 新增)提供 AI 架構建議、自然語言故障排除和程式碼協助
- API 版本管理:URL 路徑版本最常見,嚴格區分 breaking / non-breaking changes,制定 deprecation policy
下一步
在下一課中,我們將探討可觀測性與 SRE 實踐,整合 Cloud Monitoring、Logging、Trace 與 Error Reporting,實踐 Google SRE 方法論。