本頁內容適用於 Apigee 和 Apigee Hybrid。
查看
Apigee Edge 說明文件。
Apigee 是用於開發及管理 API 的平台。Apigee 透過 Proxy 層前端服務,為後端服務 API 提供抽象化或外觀,並提供安全性、頻率限制、配額、數據分析等功能。
影片:觀看這部短片,瞭解 Apigee API 管理平台簡介。
整體架構
下圖顯示 Apigee 的高階架構:
如圖片所示,Apigee 主要由下列元件組成:
- Apigee 服務:用於建立、管理及部署 API Proxy 的 API。
- Apigee 執行階段:Kubernetes 叢集中的一組容器化執行階段服務,由 Google 維護。所有 API 流量都會通過這些服務並由其處理。
此外,Apigee 還使用其他元件,包括:
- Google Cloud 服務:提供身分管理、記錄、分析、指標和專案管理功能。
- 後端服務:應用程式會使用這項服務,在執行階段存取 API Proxy 的資料。
如需更詳細的說明,請參閱「Apigee 元件」。
下圖更詳細地說明透過私人對等互連網路,在 Cloud 專案和 Google 服務之間建立的連線:
如要瞭解如何使用 Apigee,請參閱這場網路廣播,瞭解 Walgreens 如何運用 API 和 Apigee,為相片列印、處方箋和其他服務提供豐富的應用程式生態系統。
說夠了!
設定 Apigee | 接下來 | 建構第一個 Proxy! |
Apigee 版本
Apigee 提供下列版本:
- Apigee:由 Apigee 代管的雲端版本,Apigee 會維護環境,讓您專心建構服務,並為這些服務定義 API。
- Apigee Hybrid:混合式版本,包含安裝於地端或您選擇的雲端供應商的執行階段層,以及在 Apigee 雲端執行的管理層。在這個模式下,API 流量和資料會限制在您企業核准的範圍內。
數位加速
這部影片將快速介紹 Apigee 如何協助您轉型為數位企業。
選擇服務管理或 API 管理
這部影片可協助您瞭解服務管理和 API 管理之間的重要差異。
在網路上提供服務
現今企業希望在網路上提供後端服務,以便行動裝置和桌機上執行的應用程式使用這些服務。公司可能想公開提供產品價格和供應情形資訊的服務、銷售和訂購服務、訂單追蹤服務,以及用戶端應用程式所需的任何其他服務。
公司通常會將服務公開為一組 HTTP 端點。用戶端應用程式開發人員接著會向這些端點發出 HTTP 要求。視端點而定,服務可能會將 XML 或 JSON 格式的資料傳回用戶端應用程式。
這些服務的用戶端應用程式可以實作為行動裝置或平板電腦的獨立應用程式、在瀏覽器中執行的 HTML5 應用程式,或是任何其他類型的應用程式,只要能向 HTTP 端點提出要求並使用任何回應資料即可。這些應用程式可能由公開服務的公司開發及發布,也可能由使用公開服務的第三方應用程式開發人員開發。
這類模型的範例如下圖所示:
由於供應商是透過網路提供服務,因此必須確保已採取所有必要措施,保護服務免於未經授權的存取。服務供應商應考慮下列事項:
- 安全性:您如何控管服務存取權,防止未經授權的存取行為?
- 相容性:你的服務是否適用於不同平台和裝置?
- 可測性:如何監控服務,確保服務可用?
- 以及許多其他考量事項
發布會存取任何服務的用戶端應用程式後,服務供應商必須確保這些服務在新增、修改或刪除時,仍能持續運作。服務供應商也必須提供管道,讓應用程式開發人員掌握服務的任何變更,確保用戶端應用程式與這些服務保持同步。
用戶端應用程式開發人員嘗試使用不同供應商的服務時,會面臨許多挑戰。服務供應商目前可使用許多技術來公開服務。同一個用戶端應用程式可能必須使用一種機制,才能取用某個供應商的服務,並使用另一種機制取用其他供應商的服務。應用程式開發人員甚至可能必須使用不同機制,才能取用同一供應商的服務。
透過 Apigee 提供服務
Apigee 可讓您為服務提供安全無虞的存取機制,無論服務實作機制為何,都能透過明確定義的 API 存取所有服務。一致的 API:
- 方便應用程式開發人員使用您的服務。
- 讓您變更後端服務實作,而不影響公開 API。
- 讓您充分運用 Apigee 內建的數據分析、開發人員入口網站和其他功能。
下圖顯示的架構中,Apigee 會處理從用戶端應用程式傳送至後端服務的要求:
應用程式開發人員不是直接使用您的服務,而是存取在 Apigee 建立的 API Proxy。API Proxy 的功能是將公開的 HTTP 端點對應至後端服務。建立 API Proxy 後,Apigee 就會處理保護服務所需的安全性與授權工作,並分析及監控這些服務。
由於應用程式開發人員是向 API Proxy 發出 HTTP 要求,而不是直接向您的服務發出要求,因此開發人員不必瞭解服務的實作方式。開發人員只需要知道:
- API Proxy 端點的網址。
- 要求中傳遞的任何查詢參數、標頭或主體參數。
- 任何必要的驗證和授權憑證。
- 回應格式,包括 XML 或 JSON 等回應資料格式。
API Proxy 會將應用程式開發人員與後端服務隔離。因此,只要公開 API 保持一致,您就能隨意變更服務實作方式。舉例來說,您可以變更資料庫實作方式、將服務移至新主機,或對服務實作方式進行任何其他變更。只要維持一致的前端 API,現有用戶端應用程式就能繼續運作,不受後端變更影響。
您可以在 API Proxy 上使用政策,為服務新增功能,不必對後端服務進行任何變更。舉例來說,您可以在 Proxy 中新增政策,執行資料轉換和篩選、新增安全性、執行條件邏輯或自訂程式碼,以及執行許多其他動作。請務必記得,您是在 Apigee 上實作政策,而不是在後端伺服器上。
詳情請參閱「瞭解 API 和 API Proxy」。
建立 API 產品
API Proxy 是 Apigee 上的 HTTP 端點,開發人員可透過這個端點存取後端服務。雖然可以,但您通常不會提供個別 API Proxy。而是將一或多個 API Proxy 分組到 API 產品中。
API 產品是 API Proxy 的組合,搭配服務方案。該服務方案可設定 API 代理的存取限制、提供安全性、允許監控和分析,以及提供其他功能。API 產品也是 Apigee 用於授權和控管 API 存取權的主要機制。
建立 API 產品時,您可以享有極大的彈性。舉例來說,多個 API 產品可以共用同一個 API Proxy。下圖顯示三項 API 產品。請注意,所有產品都允許存取 API Proxy 3,但只有產品 A 允許存取 API Proxy 1。
您可以為每個 API 產品設定不同的屬性。舉例來說,您可以提供存取限制較低的 API 產品 (例如每日 1,000 次要求),並以優惠價格販售。然後發布另一個 API 產品,提供相同 API 代理程式的存取權,但存取上限高出許多,價格也較高。或者,您也可以建立免費的 API 產品,允許對服務進行唯讀存取,然後向相同的 API 代理伺服器銷售 API 產品,允許讀取/寫入存取權。
詳情請參閱「建立 API 產品」。
允許用戶端應用程式存取您的 API 產品
應用程式開發人員決定要存取您的服務時,必須先向您的 API 產品註冊用戶端應用程式。

應用程式開發人員註冊後會收到 API 金鑰,且必須在對 API 產品中 API 代理的每個要求中加入該金鑰。系統會驗證該金鑰,如果驗證成功,要求就能存取後端服務。
您隨時可以撤銷金鑰,讓用戶端應用程式無法再存取您的服務。或者,您也可以為金鑰設定時間限制,讓開發人員在特定時間後必須重新整理金鑰。
您可以決定如何處理開發人員存取 API 產品的註冊要求。使用 Apigee Developer Services 即可自動化註冊程序,您也可以手動控管存取權。
建立 API 產品並提供給開發人員
- 建立一或多個 API Proxy,將公開網址對應至後端服務。
- 建立 API 產品,將 API Proxy 組合在一起。
- 部署 API Proxy 和 API 產品。
- 讓開發人員知道 API 產品已可使用。
應用程式開發人員得知 API 產品的供應情形後,會採取下列行動:
- 向您的 API 產品註冊用戶端應用程式。
- 取得 API 產品的 API 金鑰。
- 透過 API Proxy (API 產品中已包含) 向服務提出要求,並在每個要求中傳遞 API 金鑰。
Apigee 的元件
Apigee 包含 API 執行階段、監控與分析,以及開發人員服務,共同為 API 建立、安全防護、管理和作業提供完善的基礎架構。
下圖顯示 Apigee 的高階架構:
Apigee 執行階段
無論您是服務供應商,要建構 API Proxy,還是應用程式開發人員,要使用 API、SDK 和其他便利服務,Apigee 服務都能滿足您建立及使用 API 的需求。
API 執行階段提供相關工具,方便您新增及設定 API Proxy、設定 API 產品,以及管理應用程式開發人員和用戶端應用程式。可從後端服務卸載許多常見的管理問題。新增 API Proxy 時,您可以對 API Proxy 套用政策,以新增安全防護機制、頻率限制、中介服務、快取等。您也可以套用自訂指令碼、呼叫第三方 API 和服務等,自訂 API Proxy 的行為。詳情請參閱「瞭解 API 和 API Proxy」。
Apigee 監控與分析
Apigee API Analytics 提供強大的工具,可查看 API 的短期和長期使用趨勢。您可以依頂尖開發人員和應用程式區隔目標對象,瞭解各 API 方法的使用情形,進而決定投資方向,並建立業務或作業層級資訊的自訂報表。
資料通過 Apigee 時,系統會收集多種預設資訊,包括網址、IP、API 呼叫資訊的使用者 ID、延遲時間、錯誤資料等。您可以建立政策,加入其他資訊,例如標頭、查詢參數,以及從 XML 或 JSON 擷取的請求或回應部分。這項資訊是從實際要求/回應流程非同步收集,因此不會影響 API 效能。
如圖所示,您可以在瀏覽器中透過 Apigee UI 查看多項指標和維度:
不過,您也可以透過指令列介面或 RESTful API 存取及控制 Analytics 服務。詳情請參閱 API 數據分析總覽。
Apigee 開發人員生態系統
Apigee 提供開發人員服務,可讓您:
- 管理使用您服務的應用程式開發人員社群。
- 與內部和外部開發人員合作,並透過財務模型建立正式關係。
- 協助開發人員順利上手,並建立開發人員入口網站。應用程式開發人員會連線至入口網站,存取 API 說明文件,進一步瞭解公開發布的 API 產品,並管理 API 金鑰。
所有 Apigee 客戶都能在雲端建立自己的開發人員入口網站。
Apigee 可讓您建立兩種入口網站:
- 整合式入口網站,可立即佈建。
- 以 Drupal 為基礎的入口網站,可進行完整自訂。