dubbo 工作原理
第一層:service 層,接口層,給服務(wù)提供者和消費(fèi)者來(lái)實(shí)現(xiàn)的
第二層:config 層,配置層,主要是對(duì) dubbo 進(jìn)行各種配置的
第三層:proxy 層,服務(wù)代理層,無(wú)論是 consumer 還是 provider,dubbo 都會(huì)給你生成代理,代理之間進(jìn)行網(wǎng)絡(luò)通信
第四層:register 層,服務(wù)注冊(cè)層,負(fù)責(zé)服務(wù)的注冊(cè)與發(fā)現(xiàn)
第五層:cluster 層,集群層,封裝多個(gè)服務(wù)提供者的路由以及負(fù)載均衡,將多個(gè)實(shí)例組合成一個(gè)服務(wù)
第六層:monitor 層,監(jiān)控層,對(duì) rpc 接口的調(diào)用次數(shù)和調(diào)用時(shí)間進(jìn)行監(jiān)控
第七層:protocal 層,遠(yuǎn)程調(diào)用層,封裝 rpc 調(diào)用
第八層:exchange 層,信息交換層,封裝請(qǐng)求響應(yīng)模式,同步轉(zhuǎn)異步
第九層:transport 層,網(wǎng)絡(luò)傳輸層,抽象 mina 和 netty 為統(tǒng)一接口
第十層:serialize 層,數(shù)據(jù)序列化層
工作流程
第一步:provider 向注冊(cè)中心去注冊(cè)
第二步:consumer 從注冊(cè)中心訂閱服務(wù),注冊(cè)中心會(huì)通知 consumer 注冊(cè)好的服務(wù)
第三步:consumer 調(diào)用 provider
第四步:consumer 和 provider 都異步通知監(jiān)控中心

dubbo 的注冊(cè)中心掛了可以繼續(xù)通信嗎?
可以,因?yàn)閯傞_(kāi)始初始化的時(shí)候,消費(fèi)者會(huì)將提供者的地址等信息拉取到本地緩存,所以注冊(cè)中心掛了可以繼續(xù)通信。
鳴謝:dubbo