相關(guān)名詞剖析
隨著互聯(lián)網(wǎng)的快速發(fā)展,企業(yè)的IT建設(shè)也是飛速發(fā)展的,但是在建設(shè)企業(yè)信息化時(shí)沒有統(tǒng)籌考慮,建設(shè)往往不成體系、重復(fù)開發(fā)、煙囪式的建設(shè),造成了資源的冗余和浪費(fèi),為了針對這些問題逐漸誕生了SOA、ESB、微服務(wù)、API網(wǎng)關(guān)以及REST等技術(shù),現(xiàn)針對技術(shù)點(diǎn)總結(jié)如下。
1API網(wǎng)關(guān)剖析
API 網(wǎng)關(guān)是一個(gè)服務(wù)器,也可以說是進(jìn)入系統(tǒng)的唯一節(jié)點(diǎn)。這與面向?qū)ο笤O(shè)計(jì)模式中的 Facade 模式很像。API 網(wǎng)關(guān)封裝內(nèi)部系統(tǒng)的架構(gòu),并且提供 API 給各個(gè)客戶端。它具備授權(quán)、監(jiān)控、負(fù)載均衡、緩存、請求分片和管理、靜態(tài)響應(yīng)處理等功能。

API網(wǎng)關(guān)負(fù)責(zé)服務(wù)請求路由、組合及協(xié)議轉(zhuǎn)換。客戶端的所有請求都首先經(jīng)過 API網(wǎng)關(guān),然后由它將請求路由到合適的微服務(wù)。API網(wǎng)關(guān)經(jīng)常會(huì)通過調(diào)用多個(gè)微服務(wù)并合并來處理一個(gè)請求。它可以在 WEB協(xié)議與內(nèi)部使用的非WEB協(xié)議之間相互轉(zhuǎn)換。API網(wǎng)關(guān)還能為每個(gè)客戶端提供一個(gè)定制的API,通常它會(huì)向移動(dòng)客戶端暴露一個(gè)粗粒度的API,以產(chǎn)品詳情的場景為例,API網(wǎng)關(guān)可以提供一個(gè)端點(diǎn)使移動(dòng)客戶端可以通過一個(gè)請求獲取所有的產(chǎn)品詳情。API網(wǎng)關(guān)通過調(diào)用各個(gè)服務(wù)(產(chǎn)品信息、推薦、評(píng)論等等)并合結(jié)果來處理請求。API網(wǎng)關(guān)主要功能如下:

使用API網(wǎng)關(guān)有優(yōu)點(diǎn)也有不足,其中使用API網(wǎng)關(guān)的最大優(yōu)點(diǎn)是:
1.它封裝了應(yīng)用程序的內(nèi)部結(jié)構(gòu)。客戶端只需要同網(wǎng)關(guān)交互,而不必調(diào)用特定的服務(wù)。
2.API網(wǎng)關(guān)為每一類客戶端提供了特定的API,這減少了客戶端與應(yīng)用程序間的交互次數(shù),還簡化了客戶端代碼。
API網(wǎng)關(guān)的不足之處在于:
1.API網(wǎng)關(guān)增加了一個(gè)我們必須開發(fā)、部署和維護(hù)的高可用組件。
2.API網(wǎng)關(guān)變成了開發(fā)瓶頸。為了暴露每個(gè)微服務(wù)的端點(diǎn),開發(fā)人員必須更新 API 網(wǎng)關(guān)。API網(wǎng)關(guān)的更新過程要盡可能地簡單,否則為了更新網(wǎng)關(guān),開發(fā)人員將不得不排隊(duì)等待。
2ESB服務(wù)總線
其主要作用是作為企業(yè)信息系統(tǒng)的“龍骨”來集成各業(yè)務(wù)系統(tǒng),實(shí)現(xiàn)異構(gòu)系統(tǒng)的互聯(lián)互通,用來拉取、調(diào)度各個(gè)業(yè)務(wù)系統(tǒng)的數(shù)據(jù),一般被稱為企業(yè)服務(wù)總線。ESB提供了網(wǎng)絡(luò)中最基本的連接中樞,是構(gòu)筑企業(yè)神經(jīng)系統(tǒng)的必要元素。

ESB提供了一種開放的、基于標(biāo)準(zhǔn)的消息機(jī)制,通過簡單的標(biāo)準(zhǔn)適配器和接口,來完成粗粒度應(yīng)用和其他組件之間的互操作,能夠滿足大型異構(gòu)企業(yè)環(huán)境的集成需求。
通過使用ESB,可以在幾乎不更改代碼的情況下,以一種無縫的非侵入方式使企業(yè)已有的系統(tǒng)具有全新的服務(wù)接口,并能夠在部署環(huán)境中支持任何標(biāo)準(zhǔn)。充當(dāng)緩沖器的ESB(負(fù)責(zé)在諸多服務(wù)之間轉(zhuǎn)換業(yè)務(wù)邏輯和數(shù)據(jù)格式)與服務(wù)邏輯相分離,從而使得不同的應(yīng)用程序可以同時(shí)使用同一服務(wù),不用在應(yīng)用程序或者數(shù)據(jù)發(fā)生變化時(shí),改動(dòng)服務(wù)代碼。
ESB產(chǎn)品作為一個(gè)產(chǎn)品化的產(chǎn)物,不僅僅是解決一些基礎(chǔ)的問題,產(chǎn)品自身還會(huì)在項(xiàng)目中不斷完善和發(fā)展。ESB會(huì)把各行各業(yè)的解決方案用到的內(nèi)容逐漸豐富到產(chǎn)品中,隨著項(xiàng)目、行業(yè)的增多ESB的功能也越發(fā)豐富,可以應(yīng)對不同行業(yè)的不同需求,隨著近期微服務(wù)的興起,ESB也進(jìn)行迭代更新,我們的ESB更新了微服務(wù)的開發(fā)、編排、注冊等功能,下文則是微服務(wù)的主要介紹。
3微服務(wù)剖析
微服務(wù)是近些年被廣泛提及的一個(gè)概念,微服務(wù)產(chǎn)生于單體應(yīng)用的擴(kuò)大化,隨著信息化不斷發(fā)展,企業(yè)對軟件功能的要求越來越具體,也愈發(fā)的細(xì)致,如果通過應(yīng)用程序來實(shí)現(xiàn),必然是一個(gè)極其復(fù)雜而又痛苦的過程,由此誕生了微服務(wù)的概念。就是將功能發(fā)布成服務(wù),應(yīng)用程序通過調(diào)用不同的服務(wù)來實(shí)現(xiàn)業(yè)務(wù),這種設(shè)計(jì)架構(gòu)稱之為微服務(wù)。

一個(gè)微服務(wù)一般完成某個(gè)特定的功能,比如訂單管理、客戶管理等。每個(gè)微服務(wù)都是一個(gè)微型應(yīng)用,有著自己六邊形架構(gòu),包括商業(yè)邏輯和各種接口。有的微服務(wù)通過暴露 API 被別的微服務(wù)或者應(yīng)用客戶端所用;有的微服務(wù)則通過網(wǎng)頁 UI 實(shí)現(xiàn)。在運(yùn)行時(shí),每個(gè)實(shí)例通常是一個(gè)云虛擬機(jī)或者 Docker 容器。
微服務(wù)主要是經(jīng)過組件分離各自擁有獨(dú)立的生命周期,并且按需進(jìn)行擴(kuò)展,這種方式打破了組件之間的技術(shù)依賴,允許每個(gè)服務(wù)各自選擇最合適的技術(shù)進(jìn)行實(shí)現(xiàn),每個(gè)微服務(wù)僅關(guān)注于完成一件任務(wù)并很好地完成該任務(wù)。在所有情況下,每個(gè)任務(wù)代表著一個(gè)小的業(yè)務(wù)能力。不同的服務(wù)甚至可以采用不同的編程語言來實(shí)現(xiàn),一定程度上微服務(wù)使技術(shù)方案變得更加靈活,在使用過程中開發(fā)、測試、部署等環(huán)節(jié)十分便捷,整體是以松耦合高內(nèi)聚的形式存在,符合IT技術(shù)思想。
4微服務(wù)架構(gòu)
微服務(wù)架構(gòu)MSA可以理解為一個(gè)輕量級(jí)的服務(wù)治理方案,也就是將系統(tǒng)的功能,通過服務(wù)的形式發(fā)布到服務(wù)器上,對服務(wù)進(jìn)行組合調(diào)用,實(shí)現(xiàn)具體的功能,解決實(shí)際業(yè)務(wù)問題的架構(gòu)風(fēng)格。

微服務(wù)架構(gòu)優(yōu)點(diǎn)如下:
1.微服務(wù)架構(gòu)使得每個(gè)服務(wù)都可以有專門開發(fā)團(tuán)隊(duì)來開發(fā)。開發(fā)者可以自由選擇開發(fā)技術(shù),提供 API 服務(wù)。當(dāng)然,許多公司試圖避免混亂,只提供某些技術(shù)選擇。然后,這種自由意味著開發(fā)者不需要被迫使用某項(xiàng)目開始時(shí)采用的過時(shí)技術(shù),他們可以選擇現(xiàn)在的技術(shù)。甚至于,因?yàn)榉?wù)相對簡單,即使用現(xiàn)在技術(shù)重寫以前代碼也不是很困難的事情。
2.微服務(wù)架構(gòu)模式使得每個(gè)微服務(wù)獨(dú)立部署,開發(fā)者不再需要協(xié)調(diào)其它服務(wù)部署對本服務(wù)的影響。這種改變可以加快部署速度,譬如 UI 團(tuán)隊(duì)可以采用 AB 測試并快速部署變化。微服務(wù)架構(gòu)模式使得持續(xù)化部署成為可能。
3.微服務(wù)架構(gòu)模式使得每個(gè)服務(wù)獨(dú)立擴(kuò)展。根據(jù)每個(gè)服務(wù)的規(guī)模來部署滿足需求的實(shí)例。甚至可以使用更適合于服務(wù)資源需求的硬件。比如可以在 EC2 Compute Optimized instances 上部署 CPU 敏感的服務(wù),而在 EC2 memory-optimized instances 上部署內(nèi)存數(shù)據(jù)庫。
微服務(wù)架構(gòu)有優(yōu)點(diǎn)當(dāng)然也有不足之處,比如服務(wù)調(diào)用帶來的系統(tǒng)復(fù)雜性,服務(wù)間的依賴關(guān)系也是難以管理的,如何構(gòu)建合理的服務(wù)依賴是考驗(yàn)架構(gòu)師能力的重要依據(jù);最后,微服務(wù)架構(gòu)的部署以及跟蹤也是很難的。總之,微服務(wù)架構(gòu)有著自身的應(yīng)用場景以及特點(diǎn),了解哪些場景適合微服務(wù)比掌握微服務(wù)的具體技術(shù)更為重要,適當(dāng)?shù)募夹g(shù)用在適當(dāng)?shù)膱鼍埃拍馨l(fā)揮合適的價(jià)值。
5SOA架構(gòu)剖析
SOA架構(gòu):SOA架構(gòu)是一種粗粒度、開放式、松耦合的服務(wù)結(jié)構(gòu),要求軟件產(chǎn)品在開發(fā)過程中,按照相關(guān)的標(biāo)準(zhǔn)或協(xié)議,進(jìn)行分層開發(fā)。通過這種分層設(shè)計(jì)或架構(gòu)體系可以使軟件產(chǎn)品變得更加彈性和靈活,且盡可能的與第三方軟件產(chǎn)品互補(bǔ)兼容,以達(dá)到快速擴(kuò)展,滿足響應(yīng)市場或客戶需求的多樣化、多變性。
SOA架構(gòu)泛化來看映射的是整體企業(yè)架構(gòu),企業(yè)架構(gòu)又分為業(yè)務(wù)架構(gòu)和IT架構(gòu),IT架構(gòu)又分為應(yīng)用架構(gòu)、數(shù)據(jù)架構(gòu)、技術(shù)架構(gòu)。在SOA項(xiàng)目中,借鑒企業(yè)架構(gòu)之道,并通過SOA技術(shù)架構(gòu)和應(yīng)用架構(gòu)將業(yè)務(wù)系統(tǒng)構(gòu)建和整合,并納入整體企業(yè)IT治理體系中。SOA技術(shù)架構(gòu)圖如下:

6Restful剖析
Open API即開放API,也稱開放平臺(tái)。所謂的開放API是服務(wù)型網(wǎng)站常見的一種應(yīng)用,網(wǎng)站的服務(wù)商將自己的網(wǎng)站服務(wù)封裝成一系列API應(yīng)用編程接口開放出去,供第三方開發(fā)者使用,這種行為就叫做開放網(wǎng)站的 API,也稱OpenAPI。隨著這幾年微服務(wù)概念的興起,另一個(gè)名詞出現(xiàn)在了我們面前,那就是Restful。而現(xiàn)在很多第三方開放平臺(tái)的API都是Restful風(fēng)格的API,而作為開發(fā)人員也經(jīng)常聽人說起Restful,REST這個(gè)概念是在2010年提出的,是HTTP協(xié)議的一位主要設(shè)計(jì)者提出的 Representational State Transfer(表現(xiàn)層狀態(tài)轉(zhuǎn)化)思想。REST概念的提出者認(rèn)為改變應(yīng)用的互動(dòng)風(fēng)格比改變互動(dòng)協(xié)議對整體表現(xiàn)有更大的影響,這就稱之為表現(xiàn)層狀態(tài)轉(zhuǎn)化,即REST它只是一種架構(gòu)思想。

REST代表的就是表現(xiàn)層狀態(tài)轉(zhuǎn)化,這個(gè)表現(xiàn)層狀態(tài)該如何轉(zhuǎn)化呢,Restful本質(zhì)上是基于HTTP的,以不同的HTTP動(dòng)詞來訪問資源,再以Json對象返回結(jié)果。我們以不同的HTTP動(dòng)詞來代表不同的操作類型,如:GET(請求)、POST(創(chuàng)建)、PUT(更新)、DELETE(刪除),所以表現(xiàn)層的狀態(tài)轉(zhuǎn)化實(shí)質(zhì)上靠的是HTTP動(dòng)詞來實(shí)現(xiàn)的。
適用場景分析
1網(wǎng)關(guān)適用場景
API網(wǎng)關(guān)能夠支撐各個(gè)場景下開放 API 的需求,支持將API開放給合作伙伴、開發(fā)者,實(shí)現(xiàn)企業(yè)核心能力的貨幣化,建立API生態(tài),支持將API適配多端,如:移動(dòng)、互聯(lián)網(wǎng)、物聯(lián),實(shí)現(xiàn)系統(tǒng)前后端分離;支持內(nèi)部系統(tǒng)整合模塊化、微服務(wù)化。
- API資產(chǎn)
面對用戶日益膨脹而又碎片化的需求,企業(yè)需要不斷探索新的商業(yè)模式,來解決客戶一系列的場景化問題。通過API網(wǎng)關(guān)提供標(biāo)準(zhǔn)的API服務(wù),讓其他開發(fā)者將不同API服務(wù)組合整合到自己的應(yīng)用中,衍生出新的服務(wù),促進(jìn)企業(yè)建立商業(yè)生態(tài)、跨界創(chuàng)新。

- API生態(tài)
如今企業(yè)面臨更多的挑戰(zhàn),企業(yè)發(fā)展需要可靠的合作伙伴。企業(yè)與合作伙伴以 API 的形式進(jìn)行服務(wù)、能力和數(shù)據(jù)的交互,系統(tǒng)與系統(tǒng)直接對接,達(dá)成深度合作,建立牢固的合作關(guān)系。將API接入阿里云市場以API的形式開放能力、服務(wù)、數(shù)據(jù)供廣大開發(fā)者采購使用,產(chǎn)生價(jià)值,在API市場,采購第三方成熟的能力和服務(wù),避免平鋪式開發(fā),專注專業(yè),借力發(fā)展。

- 多端兼容
隨著移動(dòng)、物聯(lián)網(wǎng)的普及,API需要支持更多的終端設(shè)備,以擴(kuò)充業(yè)務(wù)規(guī)模,但同時(shí)也帶來系統(tǒng)復(fù)雜性的提升。通過API網(wǎng)關(guān)可以使API適配多端,企業(yè)只需要在API網(wǎng)關(guān)調(diào)整API 定義,無需做額外工作。企業(yè)只需維護(hù)一個(gè)服務(wù)體系,面向多端輸出,只需調(diào)整API定義,即可實(shí)現(xiàn)對App、設(shè)備、web端等多種終端的支持,這就避免多個(gè)場景多套API,大大降低管理運(yùn)維成本。

- 系統(tǒng)集成
在快速發(fā)展的過程中往往不成體系、重復(fù)開發(fā)、煙囪式建設(shè),造成資源冗余和浪費(fèi),通過API網(wǎng)關(guān)對系統(tǒng)間接口進(jìn)行規(guī)范統(tǒng)一,用標(biāo)準(zhǔn)化的接口實(shí)現(xiàn)系統(tǒng)集成。

通過上面四個(gè)場景可見,API網(wǎng)關(guān)的作用還是很大的,可以統(tǒng)一管理API,使用統(tǒng)一的API平臺(tái)來統(tǒng)一管理這些API接口,提供統(tǒng)一通信協(xié)議、API文檔以及SDK,將大大提升公司內(nèi)部部門間協(xié)作的效率。
2ESB適用場景
- 應(yīng)用集成
實(shí)現(xiàn)異構(gòu)系統(tǒng)的對接,連接現(xiàn)有各孤立的應(yīng)用系統(tǒng)。包括服務(wù)之間的信息交換,協(xié)調(diào)各種應(yīng)用和數(shù)據(jù)之間的服務(wù)傳輸協(xié)議,轉(zhuǎn)換應(yīng)用數(shù)據(jù)和服務(wù)之間的消息/數(shù)據(jù)格式,任何的應(yīng)用系統(tǒng)都是通過應(yīng)用集成平臺(tái)與其它系統(tǒng)交互的。

典型場景:
1.費(fèi)用報(bào)銷與薪資對接;
2.生產(chǎn)系統(tǒng)與ERP系統(tǒng)對接;
3.業(yè)務(wù)和財(cái)務(wù)一體化,應(yīng)用系統(tǒng)跟財(cái)務(wù)系統(tǒng)憑證對接。
- 數(shù)據(jù)集成
負(fù)責(zé)業(yè)務(wù)數(shù)據(jù)上傳、匯聚,基礎(chǔ)數(shù)據(jù)(主數(shù)據(jù))的下發(fā)、分發(fā)。AEAI ESB應(yīng)用集成平臺(tái)作為數(shù)據(jù)交換平臺(tái)支持應(yīng)用間批量數(shù)據(jù)交換和數(shù)據(jù)庫間的數(shù)據(jù)交互,包括數(shù)據(jù)的抽取、轉(zhuǎn)換和導(dǎo)入操作。同時(shí)MDM不需要向不同的業(yè)務(wù)系統(tǒng)請求主數(shù)據(jù)的獲取、同步,只需要通過AEAI ESB進(jìn)行數(shù)據(jù)分發(fā)、下發(fā)等操作即可獲取這些數(shù)據(jù)。

典型場景:
1.企業(yè)數(shù)據(jù)整合或數(shù)據(jù)中心建設(shè);
2.數(shù)據(jù)交換平臺(tái)項(xiàng)目,輔助主數(shù)據(jù)管理項(xiàng)目做基礎(chǔ)數(shù)據(jù)分發(fā)。
- 服務(wù)平臺(tái)
用于微服務(wù)體系架構(gòu)中的Rest服務(wù)開發(fā)、API網(wǎng)關(guān)、服務(wù)代理、服務(wù)監(jiān)控、服務(wù)統(tǒng)計(jì)、服務(wù)超市。具體表現(xiàn)為分布式部署的ESB(可以放置于Docker容器中),實(shí)現(xiàn)微服務(wù)體系架構(gòu)下的Rest服務(wù)開發(fā)、Rest服務(wù)組合、Rest服務(wù)代理,通過管理控制臺(tái)注冊代理其它系統(tǒng)提供的Rest服務(wù),提供對Rest服務(wù)的運(yùn)行監(jiān)控、服務(wù)的啟停功能、對代理服務(wù)每次調(diào)用情況的監(jiān)控等。

典型場景:
1.前后端分離技術(shù)架構(gòu)下,做為Rest服務(wù)的開發(fā)平臺(tái);
2.OpenAPI運(yùn)作模式下的服務(wù)治理、監(jiān)控、統(tǒng)計(jì)、流量控制。
- 平臺(tái)協(xié)同
從業(yè)務(wù)系統(tǒng)實(shí)時(shí)獲取相關(guān)數(shù)據(jù),為Portal提供數(shù)據(jù)服務(wù)、BPM提供數(shù)據(jù)回寫,協(xié)作MDM、IDM做數(shù)據(jù)分發(fā),為其它平臺(tái)提供數(shù)據(jù)基礎(chǔ)和服務(wù)注冊查詢。ESB企業(yè)服務(wù)總線對SOA整合架構(gòu)的實(shí)現(xiàn)起到支撐作用,數(shù)據(jù)門戶中,ESB從業(yè)務(wù)系統(tǒng)實(shí)時(shí)獲取相關(guān)數(shù)據(jù)以XML或者JSON格式為門戶平臺(tái)中各圖表組件、表格組件提供數(shù)據(jù)服務(wù);業(yè)務(wù)流程重組中,ESB負(fù)責(zé)從各異構(gòu)系統(tǒng)中動(dòng)態(tài)獲取表單數(shù)據(jù),以JSON方式為BPM提供業(yè)務(wù)數(shù)據(jù),在流程審批操作時(shí),實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)狀態(tài)的回寫等。

典型場景:
1.企業(yè)業(yè)務(wù)流程重組項(xiàng)目支撐BPM實(shí)現(xiàn)應(yīng)用對接機(jī)制;
2.統(tǒng)一門戶中為圖表、列表、表格等前端展現(xiàn)組件提供數(shù)據(jù)服務(wù);
3.SOA綜合集成項(xiàng)目,支撐各個(gè)平臺(tái),為其提供服務(wù)。
區(qū)別聯(lián)系分析
1ESB與API網(wǎng)關(guān)聯(lián)系
SOA是一種理念,它的主要特性是面向服務(wù)的分布式計(jì)算,服務(wù)間松散耦合,支持服務(wù)的封裝,服務(wù)注冊和自動(dòng)發(fā)現(xiàn),以服務(wù)契約方式定義服務(wù)交互方式。但是SOA并沒有定義出具體的實(shí)現(xiàn)方式,目前有兩套SOA理念的實(shí)現(xiàn)方式:中心化和去中心化,這兩套架構(gòu)并沒有優(yōu)劣之分,還是要針對企業(yè)的根本訴求。
SOA中心化的實(shí)現(xiàn)方式就是ESB,ESB的根本訴求是為了解決異構(gòu)系統(tǒng)之間的連通性,通過協(xié)議轉(zhuǎn)換、消息解析、消息路由把服務(wù)提供者的數(shù)據(jù)傳送給服務(wù)消費(fèi)者。AEAI ESB企業(yè)服務(wù)總線不但可以解決異構(gòu)系統(tǒng)的集成難題,隨著微服務(wù)的興起,ESB還可以開發(fā)微服務(wù),設(shè)計(jì)微服務(wù)接口的限流、代理、轉(zhuǎn)發(fā)以及安全等功能,但是ESB并不是微服務(wù)中的API網(wǎng)關(guān),微服務(wù)可以理解為是ESB中重要的一部分。
SOA去中心化實(shí)現(xiàn)方式的根本訴求是擴(kuò)展性,實(shí)現(xiàn)方式就是微服務(wù)。分布式服務(wù)框架,主要有dubbox、spring cloud,實(shí)現(xiàn)后端服務(wù)治理的功能。
2ESB與API網(wǎng)關(guān)區(qū)別
現(xiàn)從ESB和API網(wǎng)關(guān)的使用場景、傳輸對象、服務(wù)契約、實(shí)現(xiàn)方式、交互性以及安全層次進(jìn)行區(qū)別分析。

使用場景在2模塊已經(jīng)詳細(xì)介紹,在此不做過多贅述,從傳輸對象上講ESN傳輸?shù)氖荴ML、JSON以及消息格式,而網(wǎng)關(guān)是傳遞JSON對象格式。ESB是將自己服務(wù)和接口契約發(fā)布到服務(wù)注冊中心,一邊服務(wù)使用者可以發(fā)現(xiàn)和訪問該服務(wù),網(wǎng)關(guān)則是通過文檔進(jìn)行約束。
在其實(shí)現(xiàn)方式上二者也是有很大區(qū)別的,ESN可以通過Http、WS、MQ、Restful等方式實(shí)現(xiàn),而網(wǎng)關(guān)是通過Http及Restful實(shí)現(xiàn),較為單一。
在功能上二者的區(qū)別如下。

ESB提供了服務(wù)總線的基礎(chǔ)架構(gòu),提供系統(tǒng)一致性、安全性、可靠性,以及性能和擴(kuò)展能力保障的基礎(chǔ)技術(shù)手段。ESB提供了基礎(chǔ)的集成服務(wù),包含了應(yīng)用集成、數(shù)據(jù)集成。提供內(nèi)置的各種公用服務(wù)。例如渠道認(rèn)證服務(wù),日志服務(wù)等公用服務(wù)。ESB提供了服務(wù)配置管理的前臺(tái)工具集合,并提供行業(yè)的服務(wù)規(guī)約標(biāo)準(zhǔn)。ESB提供了多角度的系統(tǒng)實(shí)時(shí)監(jiān)控與交易報(bào)表,提供用戶定制的告警。提供了多種安全機(jī)制并支持和第三方安全系統(tǒng)的有效集成,提供有效的安全監(jiān)控機(jī)制。
在功能上API網(wǎng)關(guān)有API的全生命周期的管理,包括API的創(chuàng)建、發(fā)布、下線和刪除等生命周期管理功能。其調(diào)試工具使用頁面調(diào)試工具驗(yàn)證API的連通。在限流上用于管控API的請求頻率、用戶的請求頻率和應(yīng)用的請求頻率,流量控制的時(shí)間單位可以是秒、分鐘、小時(shí)或天,并且允許設(shè)置特殊的應(yīng)用。在監(jiān)控功能上可以監(jiān)控API請求次數(shù)、API調(diào)用延遲和API錯(cuò)誤信息。
AEAI ESB特性
應(yīng)用集成平臺(tái)主要作為企業(yè)信息系統(tǒng)的“龍骨”來集成各業(yè)務(wù)系統(tǒng),一般稱之為企業(yè)服務(wù)總線(Enterprise Service BUS,ESB),在數(shù)通暢聯(lián)軟件的產(chǎn)品家族中應(yīng)用集成平臺(tái)命名為AEAI ESB,產(chǎn)品特性如下:
1.AEAI ESB支持容器化部署、多租戶管理、支持REST微服務(wù)服務(wù)開發(fā)、編排、注冊;
2.AEAI ESB企業(yè)服務(wù)總線提供API網(wǎng)關(guān)運(yùn)作模式下的服務(wù)治理、監(jiān)控、統(tǒng)計(jì)以及流量控制;
3.AEAI ESB企業(yè)服務(wù)總線自帶集成樣例可快速上手;
4.AEAI ESB企業(yè)服務(wù)總線提供靈活的業(yè)務(wù)日志及日志配置機(jī)制;
5.產(chǎn)品提供豐富強(qiáng)大的組件堆,如:Http Rest、Soap、WebService、FTP、數(shù)據(jù)庫操作、消息隊(duì)列、主題收發(fā),可以滿足客戶絕大多數(shù)的業(yè)務(wù)場景;
6.平臺(tái)除了預(yù)置豐富典型組件完成常規(guī)對接功能,同時(shí)內(nèi)置通用的數(shù)據(jù)適配、協(xié)議適配、協(xié)議接入、消息轉(zhuǎn)換、消息路由等組件,可以滿足各種復(fù)雜的業(yè)務(wù)集成場景;
7.平臺(tái)基于設(shè)計(jì)器可以以圖形化、拖拽方式方式創(chuàng)建服務(wù)及消息流程,設(shè)計(jì)器直接連接服務(wù)器使用一鍵熱部署、即時(shí)斷點(diǎn)調(diào)試;
8.對于有事務(wù)特性的信息, AEAI ESB的事務(wù)機(jī)制能夠?yàn)橛脩籼峁┒喾N粒度的事務(wù)控制;
9.對于并發(fā)量大、數(shù)據(jù)量大的需求場景,AEAI ESB的服務(wù)集群機(jī)制可以方便完成集群配置工作;
10.平臺(tái)支持認(rèn)證、授權(quán)主流機(jī)制和規(guī)范,確保所有用戶安全地訪問應(yīng)用集成平臺(tái)提供的服務(wù);
11.產(chǎn)品通過各種機(jī)制保證ESB能適應(yīng)各種復(fù)雜的外部環(huán)境。
本文由@數(shù)通暢聯(lián)原創(chuàng),歡迎轉(zhuǎn)發(fā),僅供學(xué)習(xí)交流使用,引用請注明出處!謝謝~