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