Shockweb分布式框架微服務架構(gòu)
ShockWeb天網(wǎng)微服務架構(gòu)是高效的、易用的、可控的分布式框架微服務架構(gòu)。提供無侵入、無依賴開發(fā)模式,易于在主流中間件部署。支持有狀態(tài)、無狀態(tài)兩種模式,支持原生IOC、 Spring IOC容器。設計思路與主流spring cloud、dubbo一致,其性能是spring cloud的10倍以上。核心采用netty和高效二進制序列化工具類,架構(gòu)分為五大部分:注冊中心、微服務服務端、微服務客戶端、服務代理、配置中心。每一部分都可以自己單獨部署和啟動、也可以通過java方法調(diào)用啟動,因此很容易二次開發(fā)和擴展。
1. 核心技術(shù)
通訊技術(shù)
1、采用Netty通訊工具,基于TCP通訊協(xié)議
2、點對點、廣播通訊模式,客戶端直接與服務端通訊不存在代理等中間環(huán)節(jié)
3、多路復用的通訊信道,在一段時間內(nèi)保持長連接
串行化技術(shù)
1、采用二進制串行化技術(shù),減少串行化后的字節(jié)大小,并提高效率
2、對方法名、類名采用編碼技術(shù),進一步減少串行化后的字節(jié)大小
3、反串行化無需指定實例化類,真正實現(xiàn)代碼無侵入
2. 微服務架構(gòu)組成
注冊中心服務器
1、提供若干個spaceName,支持多個微服務分類注冊
2、支持多個注冊中心集群,只要有一個注冊中心正常工作就能提供注冊服務,因此提高系統(tǒng)的可靠性和減少資源需求
3、服務治理能力,某個微服務器如果正在處理的任務達到上限,任務將被分派到其他微服務器
4、熔斷能力,出錯頻率或者超時率超過閾值,任務將被分派到其他微服務器,減少服務危害擴散
微服務
1、提供自主和容器方式啟動,不依賴任何一種容器
2、與Spring集成,實現(xiàn)Spring服務級調(diào)用,完美使用Spring的能力
3、提供簡易IOC的功能,并提供數(shù)據(jù)直傳模式,最大化提高傳傳輸性能
客戶端
1、集成Spring提供申明時服務調(diào)用,同時提供API實現(xiàn)動態(tài)化服務調(diào)用
2、提供數(shù)據(jù)直通傳輸模式,提供大數(shù)據(jù)傳輸效率
3、提供廣播式調(diào)用,多個微服務共同完成同一任務
服務路由
1、提供微服務的路由功能
2、提供反向代理和負載均衡能力
配置中心
1、分布式配置中心
2、對ShockWeb所有組件提供統(tǒng)一的配置服務
