Sermant基于 Java Agent 的無代理服務(wù)網(wǎng)格解決方案
Sermant是基于Java Agent無代理的服務(wù)網(wǎng)格技術(shù)。其利用Java Agent為宿主應(yīng)用程序提供增強的服務(wù)治理功能,以解決大規(guī)模微服務(wù)場景中的服務(wù)治理問題。
架構(gòu)
Sermant的愿景還包括構(gòu)建插件開發(fā)生態(tài)系統(tǒng),以幫助開發(fā)人員更容易地開發(fā)服務(wù)治理功能,同時不干擾業(yè)務(wù)代碼。Sermant架構(gòu)描述如下。
根據(jù)上圖,Sermant中Java Agent包含兩層功能。
- 框架核心層。核心層提供Sermant的基本框架功能,以簡化插件開發(fā)。該層的功能包括心跳、數(shù)據(jù)傳輸、動態(tài)配置等。
- 插件服務(wù)層。插件為宿主應(yīng)用提供實際的治理服務(wù)。開發(fā)者可以直接利用框架核心服務(wù)開發(fā)簡單插件,也可以開發(fā)插件自身的復(fù)雜服務(wù)治理功能來開發(fā)復(fù)雜插件。
Sermant中的Java Agent廣泛采用類隔離技術(shù),以消除框架代碼、插件代碼和宿主應(yīng)用程序代碼之間的類加載沖突。
使用Sermant的微服務(wù)架構(gòu)具有以下三個組件,如下圖所示。
- Sermant Java Agent:動態(tài)地為宿主應(yīng)用程序提供服務(wù)治理能力。
- Sermant Backend:為Java Agent的上傳數(shù)據(jù)提供連接和預(yù)處理服務(wù)。
- Dynamic configuration center:通過動態(tài)更新監(jiān)聽的Java Agent的配置來提供指令。Sermant項目不直接提供動態(tài)配置中心。這些項目目前支持servicecomb-kie等。
評論
圖片
表情
