【Spring Cloud筆記】 Eureka通過集群實現高可用


Eureka實現服務注冊與發現,在Spring Cloud微服務中起着關鍵性的作用,必須保障其高可用,常規方案無非通過集群實現。這里在本地機器搭建一個偽集群環境,通過兩個節點實現相互注冊,並通過主備數據同步實現高可用,實際生產環境可能有多個節點,原理一樣。簡單步驟如下:

【step1】:eureka配置文件如下

spring: application: name: eureka-cluster --- spring: profiles: master server: port: 8761 eureka: instance: hostname: master client: registerWithEureka: false fetchRegistry: false serviceUrl: defaultZone: http://backup:8762/eureka

--- spring: profiles: backup server: port: 8762 eureka: instance: hostname: backup client: registerWithEureka: false fetchRegistry: false serviceUrl: defaultZone: http://master:8761/eureka

注意:這里通過端口不同實現模擬,並且需要配置機器host信息:

192.168.31.11 master
192.168.31.11 backup

 

【step2】:打包部署,並啟動

通過mvn install打包,然后分別啟動,

java -jar eureka.jar --spring.profiles.active=master
java -jar eureka.jar --spring.profiles.active=backup

啟動時指定spring.profiles.active實現主備模擬。

 

【step3】:訪問測試

 訪問http://192.168.31.11:8761/ 詳情如下:

 

 訪問http://192.168.31.11:8762/ 詳情如下:

 

【step4】:修改客戶端,啟動客戶端測試

 客戶端修改Eureka的注冊地址:eureka.client.serviceUrl.defaultZone: http://master:8761/eureka/,http://backup:8762/eureka/,啟動客戶端,然后分別訪問Eureka查看,已經注冊到了各個節點。

停掉其中某個Eureka節點,然后再次啟動查看,會發現服務信息從可用的節點同步到了當前節點。

 


免責聲明!

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



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