您好,登錄后才能下訂單哦!
這篇文章主要介紹“SpringCloud怎么將Eureka Server集群化”,在日常操作中,相信很多人在SpringCloud怎么將Eureka Server集群化問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”SpringCloud怎么將Eureka Server集群化”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
一、準備工作
Eureka can be made even more resilient and available by running multiple instances and asking them to register with each other. Infact, this is the default behaviour, so all you need to do to make it work is add a valid serviceUrl to a peer, e.g.——摘自官網
Eureka通過運行多個實例,使其更具有高可用性。事實上,這是它默認的熟性,你需要做的就是給對等的實例一個合法的關聯serviceurl。
這篇文章我們基于第一篇文章的工程,來做修改。
二、改造工作
在eureka-server工程中resources文件夾下,創建配置文件application-peer1.yml:
server: port: 8761 spring: profiles: peer1 eureka: instance: hostname: peer1 client: serviceUrl: defaultZone: http://peer2:8769/eureka/
并且創建另外一個配置文件application-peer2.yml:
server: port: 8769 spring: profiles: peer2 eureka: instance: hostname: peer2 client: serviceUrl: defaultZone: http://peer1:8761/eureka/
這時eureka-server就已經改造完畢。
ou could use this configuration to test the peer awareness on a single host (there’s not much value in doing that in production) by manipulating /etc/hosts to resolve the host names.
按照官方文檔的指示,需要改變etc/hosts,linux系統通過vim /etc/hosts ,加上:
127.0.0.1 peer1 127.0.0.1 peer2
windows電腦,在c:/windows/systems/drivers/etc/hosts 修改。
這時需要改造下service-hi:
eureka: client: serviceUrl: defaultZone: http://peer1:8761/eureka/ server: port: 8762 spring: application: name: service-hi
三、啟動工程
啟動eureka-server:
java -jar eureka-server-0.0.1-SNAPSHOT.jar --spring.profiles.active=peer1
啟動service-hi:
java -jar service-hi-0.0.1-SNAPSHOT.jar
訪問:localhost:8761,如圖:
你會發現注冊了service-hi,并且有個peer2節點,同理訪問localhost:8769你會發現有個peer1節點。
client只向8761注冊,但是你打開8769,你也會發現,8769也有 client的注冊信息。
個人感受:這是通過看官方文檔的寫的demo ,但是需要手動改host是不是不符合Spring Cloud 的高上大?
Prefer IP Address
In some cases, it is preferable for Eureka to advertise the IP Adresses of services rather than the hostname. Set eureka.instance.preferIpAddress to true and when the application hostname.——摘自官網
eureka.instance.preferIpAddress=true是通過設置ip讓eureka讓其他服務注冊它。也許能通過去改變去通過改變host的方式。
此時的架構圖:
Eureka-eserver peer1 8761,Eureka-eserver peer2 8769相互感應,當有服務注冊時,兩個Eureka-eserver是對等的,它們都存有相同的信息,這就是通過服務器的冗余來增加可靠性,當有一臺服務器宕機了,服務并不會終止,因為另一臺服務存有相同的數據。
到此,關于“SpringCloud怎么將Eureka Server集群化”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。