免費服務熱線 :400-0755-667

        直線電話:17817818586 ( 同微號 )

        免費服務熱線:400-0755-667

        API網關行業發展簡析

        來源:高瞻智庫  瀏覽數:  發表日期:
          1、行業發展狀況分析
          API經濟指企業間通過API建立合作關系而產生的經濟活動。API產品供給端、需求端和API經濟得以發展的生態設施支持,構成了API經濟生態。API產品供給端主要是掌握了一定數據、內容、技術資源的企業及政府機構建立的開放平臺;需求端則極其廣泛,按需求主體維度,包括開發者、企業用戶和個人用戶;按產品維度,則囊括了各行各業各類產品和系統,如網站、汽車、家電、可穿戴設備等等,可接入互聯網的設備或系統都可使用API;此外,API經濟的發展也離不開云服務、大數據、異步計算等技術發展的生態設施支持。
          圖表:API經濟生態構成

          資料來源:iresearch
          近幾年,API網關的流行得益于微服務架構(API服務的一種模式)的興起,原本一個龐大的業務系統被拆分成許多粒度更小的系統進行獨立部署和維護,這種模式勢必會帶來更多的跨系統交互,企業API的規模也會成倍增加,API網關(或者微服務網關)就逐漸成為了微服務架構的標配組件。微服務架構系統中,需要一個API網關來承擔系統門面的工作,以過濾和調度來自外部的訪問請求。微服務網關具備路由、均衡負載、鑒權過濾等核心功能,并能整合服務治理、請求轉發熔斷機制、服務聚合等功能來優化系統。
          圖表:微服務模式下的API服務

          資料來源:iresearch
          目前,亞馬遜、阿里巴巴、騰訊都在提供基礎公有云的API網關。對于OpenAPI平臺的API網關,暫時只能選擇API網關作為解決方案,業界沒有發現比較好的可以用來作為OpenAPI平臺的入口的其他方案。對于作為微服務網關的API網關,業界的選擇可以選擇的解決方案比較多,也取決于微服務器的實現方案,有一些微服務架構的實現方案是不需要微服務網關的。值得一提的是,ServiceMesh,這是新興的基于無API網關的架構,通過在客戶端上的代理完成屏蔽網絡層的訪問,這樣達到對應用層最小的改動,當前ServiceMesh的產品還正在開發中,并沒有非常成熟可直接應用的產品。發展最迅速的產品是Istio。
          2、行業發展動態
          網關一詞最早出現于互聯網,是實現不同設備之間互聯的網絡連接設備。實現兩個系統或兩個服務的通信,在中間負責API的調用,我們把這個網關稱之為API網關(APIGateway)。在微服務架構中為了提高系統的性能,微服務化各應用服務,各服務之間的調用變得更多,也更為頻繁。API網關主要負責服務的路由請求、負載均衡、協議轉換等工作,但是隨著微服務架構的變遷,5G網絡和移動應用的迅猛發展,需求不斷增加,業務快速增長,各服務之間的流量變化呈現出爆發性的增長趨勢,迫使API網關催生出更多的功能。
          在微服務概念的流行之前,就已經出現了API網關實體,這時的主要應用場景是OpenAPI,即開放平臺,面向的用戶是企業外部合作伙伴,這是應用最多的場景。當在微服務概念流行起來之后,API網關變得越來越流行,在ChrisRichardson總結的微服務模式中,API網關已經成為服務化中的一種標準模式。通過查閱資料顯示,API網關的定位主要有以下五類:面向WebApp、面向MobileApp、面向PartnerOpenAPI、面向PartnerExternalAPI、面向IoTSmartDevice。其中面向WebApp這類場景,在物理形態上類似前后端分離,此時的WebApp已經不是全功能的WebApp,而是根據場景定制、場景化的App。面向MobileApp場景,這類場景中,移動App是后端service的使用者,此時的API網關一部分移動設備管理的功能。面向PartnerOpenAPI場景中,主要是滿足業務形態對外開放,與企業外部合作伙伴建立生態圈,此時的API網關需要增加配額、流控等安全管控功能。面向PartnerExternalAPI和IoTSmartDevice的場景提得比較少,所以不做具體介紹。
          3、行業經營業績分析
         ?。?)唯品會
          唯品會是一家專門做特賣的網站,唯品會網站是一個巨大型的網站,每張頁面的背后,都有多個服務提供靜態資源和動態數據。在一個商品的詳情頁面里,除了靜態頁面、圖片之外,還有動態內容:商品價格、促銷提示語、產品介紹、商品庫存等。每個部分都會從后端的一個或者幾個服務拉取數據。在唯品會公司內部,已經采用服務化的方式把服務進行了拆分,內部服務之間采用基于thrifr的二進制通信協議,這些服務不能直接對外部提供服務。在引入API網關之前,唯品會在外部app、瀏覽器和內部服務之間做了一層webapp,主要有兩個作用:一個是用來從外部的http協議,適配到內部的二進制協議,另一個是對數據進行聚合。由于唯品會網站業務眾多,業務量非常大,這種webapp上升到一定規模后,造成公共服務的集成、升級困難,接入技術優化也是不好繼續。
          唯品會通過引入API網關對原有的架構進行優化,主要用來協議適配、公共服務接入和優化。在外網和內網之間有了API網關,網關本身和應用程序分離,就可以獨立地對這些技術進行集成和升級。唯品會參照各種開源網關的實現,將網關邏輯分為接入層、業務層、基于nrtty實現的公共組件、以及netty負責的NIO、內存管理、各種基礎庫和異步化框架。唯品會網關的主要業務流程為先執行IP黑白名單模塊,因為這塊是CPU消耗最小、能攔截到部分請求的模塊,然后再執行路由、參數等的校驗。這部分是在內存中運算的,執行效率比較高,而且又可以攔截到一部分非法請求。之后會進入鑒權、設備指紋等外部服務調用,這些調用時并發執行的。如果鑒權通過,將會進入后續服務的調用,如果不通過,則直接返回結果。
         ?。?)Netflix
          Netflix的API網關,主要是指Zuul,Netflix將他們用于自己的三大場景:WebsiteService,APIService,StreamingService。其中前兩個定位與WebAPP、MobileApp比較類似,第三個StreamingService主要是Netflix的核心視頻業務所形成的特有形態。Zuul使用Java語言開發,基于Servlet和Filter-PRPE機制,而且在Netflix公司配套開源產品非常豐富,應景使用在公司主要業務上了。
          Netflix在Zuul的實現上,主要特色是:Filter的PREROUTINGPOSTERROR(PRPE模型),以及采用Groovy腳本的Filter實現機制、采用Cassandra作為filterrepository的機制。Filter以及Filter的PRPE模型,是典型的“前正后反模型”的實現,為集成的標準化做好了框架層面的鋪墊。恒豐銀行分布式核心系統中API網關就是使用了Zuul作為其技術架構。
          Netflix其實并沒有對API網關進行深入的功能實現,面向業務友好的相關功能,整體上它只提供了一個技術框架、和一些標準的filter實例實現。這么做的原因,其中很大原因是API網關所扮演的角色是一個業務平臺,而非技術平臺,將行業特征很強的業務部分開源,對于受眾意義也不是特別大。
         ?。?)攜程
          攜程無線應用的后端實現有HTTP和TCP兩種。攜程App所有網絡服務,無論是TCP還是HTTP都會先連接到一個API網關服務器。如果是TCP服務,會先連接上TCP網關,TCP網關會負責將請求通過HTTP轉發到后端的SOA服務接口。HTTP網關的原理與之類似。TCP網關和HTTP網關的區別僅僅在客戶端到服務端的連接方式不同而已。網關的作用除了業務請求還有流量控制和熔斷。
         ?。?)中國工商銀行
          工商銀行API開放平臺于2015年8月16日投產,在山東、浙江、上海、四川、陜西5家分行進行業務試點,投產后系統運行平穩,各項業務處理正常。截至目前,通過API開放平臺日交易量達到6000多筆,其中轉賬交易占90%以上,平均響應時間低于0.2秒。下一步,工商銀行將在現有基礎上完善平臺功能,逐步發布平臺開發者門戶、沙箱測試和在線支持等板塊,同時也將進一步提升平臺的可用性與性能。
          4、行業發展熱點
          2020年10月16日,在中國信息通信研究院主辦的“2020開源產業大會”,由網易數帆基于Envoy和Istio研發的輕舟API網關在眾多參評項目中脫穎而出,獲得“OSCAR尖峰開源技術創新獎(基于社區版本二次開發)”。
          “OSCAR開源尖峰案例”評選旨在更好地推動開源技術在中國市場的落地,鼓勵企業或個人進一步探索我國開源技術發展模式。當前Envoy和Istio作為主流云原生開源項目在國內被大型技術公司普遍采用,輕舟API網關由網易數帆輕舟微服務團隊基于Envoy和Istio進行設計、擴展實現,作為承載微服務對外API流量的基礎設施,其最大特色是通過一套云原生標準技術棧實現網關能力的擴展及性能的突破,全面實現了服務網格(ServiceMesh)與API網關數據面和控制面技術棧的統一,既擴展了云原生社區生態,也便于業務后續接入服務網格,極具技術前瞻性。
          相對于社區原生能力,輕舟API網關主要實現了4個方面的技術創新,包括擴展能力創新(如為Envoy提供了生產級LuaResty擴展能力),四層流量染色/分發創新,熱升級與版本管理創新,以及限流能力創新等。網易數帆的技術創新,使得輕舟API網關具備完整的微服務網關能力,可安全、靈活、快速對外暴露API,具備高性能、可擴展等能力,提供路由代理、服務治理、審計等豐富功能,并擁有業界領先的性能水平,強于社區的插件擴展與協議支撐能力,以及更為豐富的落地場景。
          在網易集團,輕舟API網關已全面應用于多個核心業務的全站入口流量接入,包括網易新聞客戶端、網易嚴選、LOFTER、有道、云信等,為這些業務穩定提供API入口流量代理、服務治理、流量觀測等能力。此外,輕舟API網關也已成為了深圳證券交易所、百勝中國等多個業界龍頭企業的商業API網關選型。
          4、行業市場規模
          目前API經濟的發展非常迅猛,各種服務提供者將自身的數字資產或者服務用API的形式提供給第三方,通過創造新的資產或者服務的方式,獲取到邊際效用倍增的商業價值,并由此催生出新的經濟形態。如今的商業環境的變化更加快速,對企業快速響應外部環境提出更高要求,跨界融合創新不斷發生,通過API快速構建產品和服務,迅速響應客戶需求成為優秀企業的必備技能,對API的使用亦更加廣泛。
          隨著企業的數據化進展,微服務改造,不同領域的API層出不窮,早在2014年ProgrammableWeb便預測API矢量可達到100000到200000,并會不斷增長。API開發數量的增加給邊緣系統帶來機會,也隨即演變了API網關的出現。大規模的API管理系統成為核心的發展趨勢。API網關可以實現完整API托管的服務,用于協助開發者輕松完成API的創建、維護、發布、監控等整個生命周期的管理。通過API網關,客戶可以封裝后端各種服務,以API的形式,提供給各方使用。同時,API網關協助客戶完成API文檔管理、API測試和SDK生成等。伴隨API經濟的發展,API網關服務市場規模也在逐年增加。2020年我國API網關服務市場規模約為47.01億元,較2019年增加14.22億元,增長43.37%。2016-2020年間,API網關服務市場規模CAGR為47.25%。
        圖表:2016-2020年中國API網關行業資產規模及增長(單位:億元,%)

        數據來源:工信部
        博发