之前寫了一篇是spring-cloud中配置eureka的服務註冊與發現,不會的小夥伴去我部落格看
之前配置的是單機版eureka,這個時候eureka服務掛了的話,那麼我們的服務提供者跟服務消費者豈不是都廢了?那這個程式還有存在的意義麼?
那麼今天咱們就講一講如何解決這個問題。相信大家都知道,這個問題是我們提供高可用服務必須經歷的問題。解決方案就是加集群,那麼我們來看一下eureka怎麼實現集群吧。
1、首先,我們需要集群,需要配置兩個以上的服務中心,具體如何配置,檢視我上篇部落格,
2、以兩個集群為例,我們需要在各自的yml檔案中的
#埠為6001的乙個服務中心server:
port: 6001eureka:
instance:
hostname: eureka6001
client:
register-with-eureka: false #服務註冊 false
自己不註冊到服務中心
fetchregistry:
false #服務發現 表示自己端就是註冊中心 我的職責就是維護服務例項 false
自己不獲取註冊資訊
service-url: #集群的情況下,服務端之間要互相註冊,指向對方
eureka7001.com:7001/eureka/指向另外乙個埠為7001的服務中心
#埠為7001的乙個服務中心
server:port: 7001
eureka:
instance:
hostname: eureka7001 #伺服器網域名稱
client:
register-with-eureka: false #服務註冊 false 自己不註冊到服務中心
fetchregistry: false #服務發現 表示自己端就是註冊中心 我的職責就是維護服務例項 false 自己不獲取註冊資訊
service-url: #集群的情況下,服務端之間要互相註冊,指向對方
defaultzone:
#指向另外乙個埠為6001的服務中心
#http:指向另外乙個埠為7001的服務中心在c:\windows\system32\drivers\etc中的host檔案底部加上上面的標紅的是因為,當我們需要集群eureka服務中心後,我們需要通過網域名稱去訪問各服務中心新的監控頁面,此時我們要在在電腦上更改一下ip網域名稱
127.0.0.1 eureka6001.com 分別對應兩個eureka的instance的hostname,
127.0.0.1 eureka7001.com
3、服務中心新配置好後,只需要在客戶端的yml檔案中
4、訪問對應網域名稱和埠號進行檢視
注意:目前的springcloud的版本對應的eureka的版本發生了變化,如果使用了
org.springframework.cloudspring-cloud-dependencies
hoxton.release 這個版本對應的eureka-server和下面對應的版本名稱不同
pomimport
hoxton.release對應的是
org.springframework.cloud否則會報依賴找不到spring-cloud-starter-netflix-eureka-client
自己隨手做了一下筆記,希望能幫到大家
Eureka集群配置
enable self preservation false 測試時關閉自我保護機制,保證不可用服務及時踢出 eviction interval timer in ms 5000 啟用主動失效,並且每次主動失效檢測間隔為5s response cache update inverval ms 300...
Eureka集群配置
如果是單節點的註冊中心,是無法保證系統穩定性的,當然現在專案部署架構不可能是單節點的。集群節點的部署思路 通過執行多個例項並請求他們相互註冊,來完成註冊中心的高可用性 結伴註冊 1 新增依賴 org.springframework.cloud spring cloud starter eureka ...
Eureka集群配置
eureka的集群配置。eureka集群的執行機制是 相互註冊,相互守望 主要是為了實現高可用。防止出現單點故障。假如有三個eureka服務註冊中心。7001,7002,7003。那麼7001,7002,7003需要相互註冊。即7001 7002 7001 7003。7002 7001 7002 7...