下面將經過幾個關鍵詞的形式說明API管理的重要性和將來的實現方式。前端
在整個API生命週期中更深刻地集成全部工具將進一步提升生命週期循環的速度,並且更重要的是提供知足消費者需求的API。這與API生命週期中的流程改進密切相關,咱們看到這種狀況愈來愈多發生在各個產品,由於更多企業開始將API視爲產品經理指導生命週期的產品。後端
API是咱們更快地構建軟件的核心,使用微服務和驅動CI / CD環境與Kubernetes(K8s)進行通訊。隨着公司採用無服務器架構,經過API調用執行愈來愈多的代碼和業務邏輯,這將變得更加劇要。各類規模的企業面臨的主要問題是:如何以不犧牲性能和成本的方式管理API的整個生命週期?不然,企業將只看到他們的成本將隨着他們的新數字業務產品的成功而成比例地增長,從而損害長期可持續性。api
分佈式API管理是大規模分佈的現代應用程序開發的本質。必須分發API管理。容許使用單一窗格集中控制服務,全部報告都顯示誰能夠訪問哪些內容,哪些服務可用,以及這些服務的自動化位置。任何與應用程序自己不一致的事情都會在某些時候與你的集中管理層產生不一樣步的狀況。具備本地化控制和分佈式執行,每一個服務都會向服務中心報告。當有人試圖訪問服務時,它能夠命中集中認證服務器以肯定該人是否應該具備訪問權限。安全
咱們主要關注的是使用API來跨應用程序和業務合做夥伴進行集成。企業內部經過使用SaaS應用程序替換舊系統來實現IT系統的互聯網化,這些新應用程序須要與其餘企業系統集成,不管是互聯網仍是傳統企業。例如,常常與實現ERP系統化的客戶合做,那就須要將新ERP與其餘系統集成。多一個遺留系統可能會致使基於文件的集成混亂。服務器
使用新的ERP或者已發佈的API管理系統是鏈接全部其餘企業系統(如總賬和倉庫管理解決方案)的首選集成點。此外,這些系統化的ERP解決方案可以經過其API提供對企業信息的實時訪問。網絡
可以與客戶合做,利用向其合做夥伴發佈API,從而提供對此信息的有限訪問權限。例如,想要檢查庫存或檢查訂單狀態的合做夥伴可使用API直接從ERP提供其數據視圖,這能夠經過API查詢來加強傳統的EDI流程,以便對從實時響應中受益的某些行爲進行查詢。架構
現在每一個人都曾經談論過API生命週期,但不少時候你只會爲每一個開發階段提供工具,而不是提供一種集成方法,使開發人員可以更輕鬆地設計,實施,部署並以自動方式管理它。若是設計文檔,須要等待數月才能看出API是否符合設計要求,那實在是一個很低效的流程。一個開發人員更但願迭代方便並支持敏捷開發過程。咱們最終會走上自動化API的DevOps的道路,即使咱們如今尚未到那個時候。異步
隨着將來出現多種形式因素的控制點類型。考慮服務網絡和API管理將如何疊加是很重要的,API管理是關於提供服務與該服務的多個消費者之間的關係。規模越大,正式的API管理平臺就越重要。國內的話可使用 EOLINKER API Studio 平臺 ,國外的話能夠考慮Swagger\Postman等等。分佈式
若是使用API而不是共享庫來控制單個用戶或開發人員團隊的API訪問,則服務網絡能夠很好地保護兩個端點之間的通訊。服務網格提供智能網絡,以幫助開發人員鏈接網格中的其餘服務。開發人員在學習如何建立在容器、微服務環境和服務網絡上工做的分佈式應用程序的基礎上,將反過來幫助開發人員解決這個問題。ide
基於微服務架構的應用程序現代化是數字化轉型計劃的核心。最大的機會在於微服務的API管理。對於管理微服務使用的API,須要具備靈活、可移植且可在任何基礎設施(裸機,VM和容器,公共雲和私有云)上運行的「小佔地面積」的解決方案。
能夠預見的是,在將來的一兩年內,服務網絡將出現巨大的趨勢,更多企業會採用API管理並帶給每一個微服務,以確保應用程序和微服務相互通訊的能力。而不是API網關也將代理放在邊緣以欺騙微服務,用以僅與代理進行通訊。
市場已經爲SaaS解決方案作好了準備,可以將微服務API直接給客戶提供使用受權和API交付選項。舉個例子,亞馬遜將AWS的每一個組件構建爲可由客戶直接尋址的微服務,並且能夠編寫接收OAuth承載令牌的自定義受權者,並根據IAM策略將這些受權者轉換爲訪問決策。這實際上很簡單,雖然它須要AWS客戶的大量配置和定製。當市場需求足夠大,總有一天咱們會看到亞馬遜提供的基於標準,資源感知的API身份驗證和受權產品做爲一流的命名產品提供,而不是隱藏在教程中的業務流程。
更多關於API管理的工具會在市場上出現,集成度將會愈來愈高,它表明着這個行業的成熟。使用一系列合適的API工具來完成特定的工做而且作得很好,這無疑是最高效率的,也爲開發人員提供空間,使他們能夠專一於他們的核心項目,並將冗餘工做委託給已經完善的服務,以確保質量和效率。
只要遵循「更小,更高效,支持多語言」,通訊方式在內部和外部使用的樣式能夠更多樣。好比,GRPC是由Google開發的二進制格式,是一種更有效的內部通訊方式。但在外部,仍然須要像REST那樣對用戶友好的東西,所以爲了方便,內部更多地採用GRPC和API。咱們將看到以多種格式呈現的API,一種是內部格式,另外一種是外部格式。
從短時間來看,HTTP極可能會在API的形式上產生比目前更普遍的影響。沒法實現的用例,如今能夠實現傳統的通訊模式。從長遠來看,真正的數據(多是計算)分散可能會嚴重改變流程。可是,實現這一律唸的工具仍然處於起步階段。今天最早進的推進者是區塊鏈範式,看到不少公司正在探索區塊鏈如何解決這些問題,也許在將來全部的問題有的新的解決的思路。
雖然與RESTful API相比,OpenAPI規範(OAS 3.0)的採用率仍然很高,但一些公司和技術正在採用超越SOAP / XML和基於WSDL / WADL的API。基於HTTP / JSON的RESTful API等技術的新進展正在被採用,併爲行業提供了很好的服務。
此外,非基於HTTP的API也在不斷增長,使得gRPC,異步API(消息傳遞,流媒體,發佈和訂閱)成爲一些公司關注的焦點。例如,構建AsyncAPI規範是爲了解決基於非HTTP的異步API,如MQTT,Kafka,WebSockets,AMQP和STOMP協議。這就是API管理供應商興起所在,這是一種將API規範從一種格式轉換爲另外一種格式的工具。
API管理供應商的另外一個機會是擴展API操做(APIOps)中的產品。APIOps將以與將DevOps應用於軟件開發生命週期相似的方式應用於API。例如,GitLab爲API生命週期提供完整的DevOps工具,從項目規劃,源代碼存儲庫到CI / CD監控,安全性,問題跟蹤功能,能夠在同個地方提供給企業。以上全部內容均可以隱藏在API管理平臺後實現。
考慮到成本未用於正確維護API時所產生的成本或安全問題,咱們須要更好的方法。GraphQL,SPARQL和與數據共存的數據安全性提供了一個有吸引力的將來。它不只簡化了,還提供了額外的實用程序,並將數據安全性放在了首要關注的位置。區塊鏈可用於保護數據完整性,容許消費者證實信息的來源。
未來,大部分數據都將實時生成,發送和接收。鑑於天天生成的數據量正在以極高的速度增加,開發人員將很快須要更多的雲原生和可擴展的解決方案來管理API。舊版API管理解決方案已經太慢,並不老是可以橫向擴展。
API管理工具能提供一套產品來幫助企業大規模管理其API設計工做流程。其中一個關鍵部分是構建在大多數企業中已存在的開發工做流程上,這意味着與GitHub等現有工具集成。爲此,好的API管理工具須要能進行API集成,自動將GitHub中的信息提取到產品中,並將信息從產品推送到GitHub。最終結果是爲咱們的客戶提供了更好的體驗,而且因爲GitHub公開的豐富API而使其成爲可能。API解決的基本問題是,在最短的時間內以最小的成本解決技術需求。市場上比較好的API管理工具備POSTMAN(英語)、EOLINKER(中英)、Swagger(英語)等。
史基浦機場啓動了一個用例,改善了經過機場的乘客體驗。有太多的數據是有價值的,它成了一個集成問題,擴展登機牌,跟蹤航班,到達離境信息,飛行員警報等信息集成,以實現內部敏捷性,他們決定以API爲重點,努力實現不一樣應用程序的集成,打開內部API以構建合做夥伴生態系統。
Capital One是全球最大的銀行機構之一,提供各類在線金融服務,包括API產品。第三方開發商和合做夥伴能夠爲其客戶提供一流的數字體驗,並經過使用Capital One的外部API打開銀行帳戶,生成個性化信用卡優惠以及跟蹤客戶獎勵來創造新的收入來源。NGINX技術使Capital One可以將其應用程序擴展到天天120億次操做,峯值爲每秒200萬次操做,延遲時間僅爲10-30毫秒。
還有一個典型的用例是Netflix,他們須要鏈接超過500個客戶端設備,iPhone,Android,X-Box等。但它們具備良好規範化的API,能夠處理電影中的元數據,處理搜索請求,圖像服務,電影的實際流式傳輸。可是在緊張的網絡上受限制的設備,他們爲前端(BFF)建立了一箇中間件後端來使用基礎API,包含客戶端須要使用的大部分業務邏輯,而後打開本身的API的接口,這些API只爲該客戶端提供服務。當一個新的客戶端出現時,他們所要作的就是在客戶端代碼中建立一個新的BFF。若是再也不須要一個設備的客戶端,它們只會關閉該代碼而且不會破壞任何內容。
若是是營銷人員或是營銷技術公司,他們過去常在內部構建軟件解決方案。然而,主要問題是獲取構建可銷售產品所需的數據須要大量的時間和金錢。營銷須要大量數據纔能有效,但收集和分析全部這些數據的成本很是高,並且由於很明顯並不是每家公司都可以分配所需的資源來實現軟件項目,所以進入市場的技術門檻是不合理的。而如今運用API技術能夠在幾周內構建一個簡單的關鍵字研究工具,大大提升了營銷的效率。
參考資料:
https://dzone.com/articles/api-management-additional-considerations
https://dzone.com/articles/api-use-cases-1