採用DevOps後,機構意識到,只要把決策和工作轉移到開發生命週期的早期階段,就能找出並降低開發專案中的風險。這項程序通常稱為「提早」。因此,現代開發人員必須投入更多心力,才能將功能推送給客戶。他們應設計可擴充的軟體架構、開發安全且高效能的程式碼、設定基礎架構、執行測試、部署及監控應用程式等。這種做法雖然可以帶來許多好處,但也會讓開發人員專心於編寫程式碼的時間減少,這可能對軟體品質造成不良影響,或導致新功能延遲發布。
正如開發運作工程師著重於為外部客戶最佳化軟體推送的方式,平台工程師則必須專注於建構平台,為內部客戶 (也就是開發人員) 提供一致的順暢體驗。建立內部平台是什麼樣的工作?您的日常工作包括為開發人員建立標準化體驗,賦予員工更多自主權。這樣在開發及部署新服務時,就能避免內部客戶的認知超載。內部開發人員平台嵌入了某些決策、標準和程序,為開發人員建立黃金路徑。如此一來,開發人員就能專心編寫程式碼,為客戶創造更優質的軟體體驗。換句話說,除了提早外,機構也應「下移」,將更多責任下推至其平台:
如果您希望透過開發 API,協助開發人員充分運用平台,請採取以下做法:
優秀的應用程式在提供商品及服務時,必須面面俱到且維持一致的服務品質。這麼做不但能隱藏複雜性,還能讓作業順暢且用起來愉快。最終目標應一律是為使用者提供良好的體驗,而打造成功產品的機構組織總是「從外向內」,一開始就以使用者的角度思考。開發人員必須能製作啟發人心的應用程式,才能提供良好的使用體驗。而想要達到這個目標,就必須提供優質的 API。優質的 API 可簡化機構的複雜作業,讓開發人員專心打造使用者體驗。然而,出色的 API 不會憑空出現。這些機構也將 API 當做數位產品,將整個團隊投入於其建立與管理,作為平台的重要功能。
開發人員用來打造數位產品的平台也必須視為產品,因此平台工程團隊也應對使用者 (開發人員) 採取從外向內的方式,瞭解他們的需求,為他們創造愉快的使用體驗。平台工程師有責任創造、建構及統合內部範本和工具,以供開發人員在建構軟體時使用,無論他們是在開發前端應用程式、後端服務,還是產生及使用 API。您團隊的角色是確立貴機構所建立的軟體應要如何測試、保護、部署及管理。打破資料孤島,提高 API 的創建效率。
就像軟體開發的其他面向一樣,您的團隊也應該要避免開發人員分別重新建立具跨領域考量的 API 架構元素。而是要提供他們一系列簡單的工具和設定選項,以便立即運用。以下列舉幾個最適合由您平台處理的 API 管理環節:
Apigee是一個 API 管理平台,可為平台團隊及其內部客戶提供一系列功能,以便更有效率地建構、管理及操作 API:
Apigee 可為開發人員提供額外一層的安全、探索和觀測功能,協助 API 生產者建構和管理公開其商業邏輯的 API。產品團隊可以整合及發布 API,做為彈性的「產品」組合,以滿足不同的消費行為。Apigee 也能幫助 API 使用者輕鬆掌握可用的 API 產品、瀏覽說明文件、快速上手並立即開始開發應用程式。現在有了生成式 AI,Apigee 也能重新構思 API 的開發方式,讓經驗豐富的開發人員和新手開發人員都能更輕鬆順暢地管理系統間的通訊。
在 Apigee 中管理 API 的程序,就從建立 API Proxy 開始。API Proxy 會公開開發人員用於存取後端服務的介面。他們並未直接使用這些服務,而是存取生產者建立的 Apigee API Proxy。有了 Proxy,您就能將後端與實際的 API 分離,提供客戶更可靠的體驗,還能在不影響客戶的情況下更新及變更後端。API 團隊可以利用 Proxy 提供的功能保護及控管 API 的行為。為了讓 API 程式能隨著製作和消費團隊的數量成長而順利擴充,平台必須透過流暢的自動化管道和可重複使用的功能來實現黃金路徑。
假設貴公司想要建立可營利的新 API 來創造額外收益。您的團隊與開發人員會談,針對應如何建立這些新的 API 制訂全面的策略。而您的團隊目前負責執行這些要求,並以包含通用政策、流量轉送控制項和錯誤處理慣例的明確 API 範本形式進行標準化。視用途而定,可能有幾組範本以涵蓋各種用途。常見的用途是針對在 on-prem 環境中執行的舊版後端,提供快取或轉換政策。apigee-samples 存放區是個很好的起點,而我們的 DevRel 存放區也提供 Proxy 範本範例供您參考。除了政策範本外,平台團隊也可以將開發人員用於建構及部署 Proxy 的 pipeline 標準化。您可以運用 Apigee 的管理 API 和工具,建立支援這些黃金路徑的 CI/CD 管道。我們已發布參考實作,方便您踏出第一步。
原始碼中的 MVP API Proxy 管道可能類似如下:
此外,這個 pipeline 可能會在內部目錄中註冊這個 API,例如 Apigee 的 API 中心。API 中心這項工具可協助機構記錄、尋找及發布 API 相關資訊。中心內建的註冊資料庫含有 API 各版本在其生命週期中的詳細資訊,包括相關規格、目前部署作業、擁有權與聯絡資訊、依附元件等。除了內建資源,客戶也可以定義自己的分類方式,供使用者搜尋及篩選。為進一步提升品質與一致性,API 中心還提供評量表,方便開發人員更妥善瞭解其 API 設計如何達到預期標準。API 中心的註冊資料庫可同步至內部開發人員入口網站,例如 Backstage 或其他內部開發人員平台工具。
最後,對於外部消費者,這個管道可將 API 產品與附加的說明文件和使用者指南發布到公開的 API 入口網站,且全都享有自訂的樣式設定和品牌宣傳元素。
大規模建構 API 時,最佳做法是重複使用通用政策,以加快開發速度及縮短交付時間。Apigee 中的共用流程可協助您維持各 API 的標準化和一致性。透過共用流程,您可以組合政策和資源,並使用 FlowCallout 政策或流程掛鉤在多個 API Proxy 之間共用。共用流程通常會與 API Proxy 分開開發,一般是由負責特定區域的平台團隊或各領域專家所開發。舉例來說,您可以開發共用流程來擷取一組標準的要求和回應欄位,並將其寫入至 Cloud Logging。或者可能是輸出標準化錯誤訊息和代碼的錯誤處理流程,又或是與第三方識別資訊提供者整合的驗證流程。共用的流程開發可使用與 API Proxy 相同的工具和概念來自動化、測試及部署。您可以前往這裡查看一些常見的共用流程範例。
隨著 DevOps 的崛起,GitOps 也逐漸受到歡迎。這個架構採用了多項最佳做法,例如透過 Git 進行版本管控、提取要求、CI/CD pipeline、自動化以及法規遵循政策。歡迎參閱這個網誌,進一步瞭解 API 提交的最佳做法。這些做法可以成為開發人員的黃金標準。舉例來說,開發人員可以使用 Duet AI 設計 API 以建立 OpenAPI 規格,然後再推送至功能分支版本,進而觸發提取要求。提取要求獲准並合併後,系統會自動啟動 CI/CD 管道,而系統會針對每個環境重複執行這項程序。在 Apigee 中,平台團隊可以建立獨立的機構和環境,在整個開發生命週期中部署及測試 Proxy。使用 GitOps 策略,便可將 Git 存放區的每個分支版本都對應至 Apigee 環境。
使用 Apigee 即付即用模式的客戶,可以選擇具有不同功能的不同環境類型,且客戶可以為不同的用途建立一系列環境類型。
將 Proxy 和共用流程程式碼託管於原始碼存放區,並使用 GitOps 為 API 開發人員建立明確的黃金路徑,讓他們專注於設計出色的 API 並實作基礎商業邏輯。開發人員也可以使用 VS Code 適用的 Cloud Code 外掛程式,來在本機開發及測試,使一切更輕鬆簡單。
加強開發人員與平台團隊之間的合作,有助於將開發人員從人工作業中解放出來。降低作業複雜度後,開發人員就能全心投入最擅長的事務,創造更優質的客戶體驗。將 API 和平台視為貴機構的產品,可提升自主性、速度、品質和創新能力。只要採用上述策略,您就能減少開發人員的負擔,並協助他們建構更優質的 API。準備好了嗎?您可以免費註冊並在自己的免費沙箱中開始建置。想進一步瞭解價格資訊嗎?查看 Apigee 的新定價,並利用我們的資源以幫助您開始將 API 管理功能嵌入至開發人員平台。