(1)dubbo工作原理
第一層:service層,接口層,給服務提供者和消費者來實現的
第二層:config層,配置層,主要是對dubbo進行各種配置的
第三層:proxy層(破繞洗),服務代理層,透明生成客戶端的stub和服務單的skeleton
第四層:registry層(ruai嘴思吹),服務注冊層,負責服務的注冊與發現
第五層:cluster層(克拉斯特),集群層,封裝多個服務提供者的路由以及負載均衡,將多個實例組合成一個服務
第六層:monitor層(模擬特),監控層,對rpc接口的調用次數和調用時間進行監控
第七層:protocol層(破瑞特扣),遠程調用層,封裝rpc調用
第八層:exchange層(渴死稱職),信息交換層,封裝請求響應模式,同步轉異步
第九層:transport層(穿絲剝特),網絡傳輸層,抽象mina和netty為統一接口
第十層:serialize層(希瑞來自),數據序列化層
工作流程:
1)第一步,provider向注冊中心去注冊
2)第二步,consumer從注冊中心訂閱服務,注冊中心會通知consumer注冊好的服務
3)第三步,consumer調用provider
4)第四步,consumer和provider都異步的通知監控中心
(2)注冊中心掛了可以繼續通信嗎?
可以,因為剛開始初始化的時候,消費者會將提供者的地址等信息拉取到本地緩存,所以注冊中心掛了可以繼續通信