注冊中心架構圖
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI0gTMx81dsQWZ4lmZf1GLlpXazVmcvwFciV2dsQXYtJ3bm9CX9s2RkBnVHFmb1clWvB3MaVnRtp1XlBXe0xCMy81dvRWYoNHLwEzX5xCMx8FesU2cfdGLwMzX0xiRGZkRGZ0Xy9GbvNGLpZTY1EmMZVDUSFTU4VFRR9Fd4VGdsYTMfVmepNHLrJXYtJXZ0F2dvwVZnFWbp1zczV2YvJHctM3cv1Ce-cmbw5iN1MTO0U2NhNjY0MzYmRGOyYzX4QTM1cTM1IzLcVDMyIDMy8CXn9Gbi9CXzV2Zh1WavwVbvNmLvR3YxUjLyM3Lc9CX6MHc0RHaiojIsJye.png)
文章目錄
- 1.Eureka的異地多活解析
- 2.Reign和Zone概念解析
- 3.Eureka中的Region與Zone配置
1.Eureka的異地多活解析
異地多活一般是指不同城市建立的獨立資料中心
活相對的是主備關系中的熱備而言的, 熱備是指備份機房随時全量備份着主機房中的資料, 但是平時不支撐業務, 對外不提供服務, 隻要在主機房出現故障的時候會切換到備份機房, 就是說平時來說, 隻有主機房是活的。
多活是指這些機房屬于主從模式, 即這些機房都對外提供服務, 互相備份。
2.Reign和Zone概念解析
Eureka中具有Region與Availability Zone(簡稱AZ)概念。
Region: 為了友善不同地理區域中使用者的使用,大型雲服務提供商一般會根據使用者需求量在不同的城市、省份、國家或洲建立不同的大型雲計算機房。這些不同區域機房間一般是不能“内網連通”的。
同一Region機房是如何實作同域容災的
為了增強容災能力,在一個Region中又設定了不同的Availability Zone。這些AZ間實作了内網連通,且使用者可以根據自己所在的具體位置自動選擇同域中的不同AZ。當使用者所要通路的AZ出現問題後,系統會自動切換到其它可用的AZ。
像Eureka系統架構圖中的us-east-1c、us-east-1d、us-east-1e就是us-east-1這個Region中的c、d、e三個AZ。
3.Eureka中的Region與Zone配置
假設某公司的伺服器有Beijing、Shanghai等多個Region。Beijing這個Region中存在兩個AZ,分别是
bj-1與bj-2,每個AZ中有三台Eureka Server。
h-1與h-2兩台主機提供的都是相同的Service服務,根據地理位置的不同,這兩台主機分别注冊到了距
離自己最近的不同AZ的Eureka Server。
Server AZ bj-1配置
Server AZ bj-2配置
Zuul AZ bj-1配置
Zuul AZ bj-2配置
Service AZ bj-1配置
Service AZ bj-2配置
優先選擇同zone服務配置
當一個region有多個zone時,微服務調用應用時優先調用同zone内的應用。原因是eureka client有個配
置prefer-same-zone-eureka,預設為true。當同zone中的應用均不可用時,才會調用其它zone中的服
務。