一文讀懂什么是API全生命周期管理
隨著API使用率的不斷增加,其使用場景已經擴展到企業的所有領域。但是,僅憑API本身并不足以應對當今數字世界中日益增長的集成挑戰。企業必須為其API戰略提供足夠管理支持,即API全生命周期管理解決方案。在API的整個生命周期中,為開發人員提供API管理解決方案,使他們能夠在不斷變化的環境中靈活地集成應用程序、系統和數據。
什么是API全生命周期管理?
API全生命周期管理是指從API的創建到終止,對其整個生命周期進行監督的過程。這包括從API設計、API發布、API文檔記錄、API安全保護和API分析等所有環節。有效的API戰略必須包括一個API管理解決方案,使API易于發現和重用,并確保其得到妥善的治理和保護。
API生命周期的三個階段
API管理的核心是服務于API的整個生命周期,并激活相關的生態系統。以API為先的方法通過戰略性地將API視為產品并對其進行管理,來強調整個生命周期的重要性。這種方法的結果是設計良好、管理得當且安全的API,以服務于構建新體驗的開發人員。
以下是以產品為中心的生命周期中的三個不同階段:設計、實施和管理。
API設計
API生命周期的第一步是設計——即創建API。設計API時,首先要從外部視角出發,從API的“接口/契約”開始。
API開發人員首先創建API的“用戶界面”,確定API的外觀和行為——這也被稱為API契約。這種方法通常被稱為“設計優先”方法,應遵循精心設計的API設計生命周期,以優化最佳體驗。這一步必須以人類可讀的方式完成——以開發人員可以輕松理解的方式指定契約。
在這一步驟中,API開發人員執行以下任務:
-
設計:確定流程和業務需求,創建邏輯數據模型,轉換為邏輯服務,進行API分組
-
模擬:模擬API資源,模擬API操作/方法,模擬請求/響應負載/代碼
-
反饋:模擬API,發布交互式控制臺,創建筆記本用例,接收開發人員反饋
-
驗證:根據開發人員反饋適當修改API設計,繼續驗證
任何設計良好的API都將在其他API中重復出現。這可以很容易地封裝成最佳實踐模式,既可以在API的結構層面(名詞資源),也可以在方法層面(動詞)上進行。因此,當API開發人員進行設計過程時,重要的是他們能夠發現和共享可重復的模式。
API實施
API實施是企業數字化轉型關鍵環節。實現成百上千個API與后端以及彼此之間的連接至關重要。這必須以系統的方式進行(而不是點對點編碼)。
實施階段包括構建和測試兩個步驟。
系統化的構建方法可確保API開發人員能夠輕松獲得以下架構模式:
-
編排
-
轉換
-
路由
-
數據映射
-
系統間連接
一旦API構建完成,它將經過多輪API測試,以確保其按預期工作。如果測試沒有問題,則可以進入下一個生命周期階段,但大多數情況下,API將在進入部署階段之前經歷多輪測試和調整。測試自動化工具在這里至關重要,因為它集成了持續交付和部署的DevOps流程。
API管理
在運行時通過應用策略來確保應用程序構建塊遵循安全和架構治理的最佳實踐至關重要。通過API管理器監控所有流量同樣重要,因為只需一個薄弱環節就可能讓整個系統崩潰。
在這個生命周期階段中,包括以下步驟:
-
保障安全
-
部署
-
監控
-
故障排查
-
管理
此外,這些API需要能夠被發現以便用于其他目的。能夠適當地發布這些API,以便消費開發人員可以輕松找到、研究并理解它們,可能會決定整個項目的成敗。
在API生命周期管理中,誰負責什么?
這取決于您組織的成熟度,可能是一個人負責所有這些職責,也可能是多個人負責特定的領域。API生命周期中的每個階段都提供了特定的價值,從而確保應用程序構建塊能夠提供所需的業務成果。
在規模較小的組織中,API經理會監督整個API生命周期。而在更強大的組織中,API分析師和管理員將負責設計,DevOps人員將參與進來,集成開發人員和應用網絡架構師將處理實施工作,而API管理員將負責管理工作。
應用程序網絡中的API管理
在當今競爭激烈的市場環境中,企業需要迅速做出決策。無論是新的營銷活動、產品改進、合作伙伴門戶還是員工生產力應用程序,企業都在爭奪速度。他們需要靈活性來創建有目的、敏捷的應用程序構建塊,這些構建塊可以通過設計精良、管理良好的API輕松組合在一起,以快速創建所需的內容。
將這些構建塊連接起來,就會形成一個可互換功能的網絡——一個由子功能或應用程序組成的網絡,稱為應用網絡。通過創建這些構建塊,并為按需快速組合它們提供靈活性,可以為組織提供未來保障并防范不確定性。
應用網絡由應用構建塊組成。這些構建塊具有多個元素,并且必須分離每個元素之間的關注點。API接口、API實現和API管理方面都有各自獨特的生命周期需要遵循。這個構建塊本身應該被視為一個產品,因為這些特性也是優秀產品所共有的。
要了解更多關于在API管理的信息,請關注我們最新的API博客文章。