ribbon區域親和配置一例


只需在springboot的配置文件中添加以下內容即可:

eureka.instance.metadata-map.zone=left

該配置是一個eureka客戶端的配置,並且該客戶端使用了ribbon。

 

配置只是標記了該服務在注冊中心的zone,當該服務調用其它服務時,ribbon默認會優先從zone相同的服務中選擇被調用對象。

 

————————————————以下內容都是廢話,看官不必理會———————————— 

 

關於region,我曾以為ribbon會優先在同region下找相同zone的服務,經過測試(通過eureka.client.region配置了服務的region),發現region沒什么用,不管你的region是否一樣,區域親和只和zone有關。

 

在ribbon中只看到一個地方用到了region:

 

org.springframework.cloud.netflix.ribbon.eureka.EurekaRibbonClientConfiguration

 

 

也就是說在配置了 eureka.client.region 並且沒有配置 eureka.instance.metadata-map.zone 的情況下:

才會用region去查詢availabilityZones中的內容,並且拿出第一個value,當成當前服務的zone,如上圖這個配置,最后ribbon會把當前服務的zone設為left

 

尷尬的是,這有什么用呢???在下才疏學淺,不能領會其真諦,待日后有機會再說吧(算了吧)。。。

 

測試使用的版本:Dalston.SR1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM