分布式服务框架dubbo原理解析 转
生活随笔
收集整理的這篇文章主要介紹了
分布式服务框架dubbo原理解析 转
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
alibaba有好幾個分布式框架,主要有:進行遠程調用(類似于RMI的這種遠程調用)的(dubbo、hsf),jms消息服務(napoli、notify),KV數據庫(tair)等。這個框架/工具/產品在實現的時候,都考慮到了容災,擴展,負載均衡,于是出現一個配置中心(ConfigServer)的東西來解決這些問題。 基本原理如圖: 在我們的系統中,經常會有一些跨系統的調用,如在A系統中要調用B系統的一個服務,我們可能會使用RMI直接來進行,B系統發布一個RMI接口服務,然后A系統就來通過RMI調用這個接口,為了解決容災,擴展,負載均衡的問題,我們可能會想很多辦法,alibaba的這個辦法感覺不錯。 本文只說dubbo,原理如下:
當某個Server不可用,那么就更新受影響的服務對應的serverAddressList,即把這個Server從serverAddressList中踢出去(從地址列表中刪除),同時將推送serverAddressList給這些受影響的服務的clientAddressList里面的所有Client。如:192.168.0.3掛了,那么UserService和ProductService的serverAddressList都要把192.168.0.3刪除掉,同時把新的列表告訴對應的Client?172.16.0.1,172.16.0.2,172.16.0.3; 當某個Client掛了,那么更新受影響的服務對應的clientAddressList ConfigServer根據服務列表,就能提供一個web管理界面,來查看管理服務的提供者和使用者。 新加一個Server時,由于它會主動與ConfigServer取得聯系,而ConfigServer又會將這個信息主動發送給Client,所以新加一個Server時,只需要啟動Server,然后幾秒鐘內,Client就會使用上它提供的服務
- ConfigServer
| ?serviceName | serverAddressList | clientAddressList |
| ?UserService | 192.168.0.1,192.168.0.2,192.168.0.3,192.168.0.4? | 172.16.0.1,172.16.0.2 |
| ?ProductService | 192.168.0.3,192.168.0.4,192.168.0.5,192.168.0.6 | 172.16.0.2,172.16.0.3 |
| ?OrderService | 192.168.0.10,192.168.0.12,192.168.0.5,192.168.0.6? | 172.16.0.3,172.16.0.4 |
- Client
- Server
總結
以上是生活随笔為你收集整理的分布式服务框架dubbo原理解析 转的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国轩高科是国企吗
- 下一篇: 印花税对股市有何影响 简单给大家分析