SpringCloud分散式微服務雲架構 第十篇: 高可用的服務註冊中心(Finchley版本)
文章的SpringCloud 教程 | 第一篇: 服務的註冊與發現(Eureka) 介紹了服務註冊與發現,其中服務註冊中心Eureka Server,是一個例項,當成千上萬個服務向它註冊的時候,它的負載是非常高的,這在生產環境上是不太合適的,這篇文章主要介紹怎麼將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透過執行多個例項,使其更具有高可用性。瞭解springcloud架構可以加求求:三五三六二四七二五九,事實上,這是它預設的熟性,你需要做的就是給對等的例項一個合法的關聯serviceurl。
這篇文章我們基於第一篇文章的工程,來做修改。
二、改造工作
在eureka-server工程中resources資料夾下,建立配置檔案application-peer1.yml:
server: port: 8761 spring: profiles: peer1 eureka: instance: hostname: peer1 client: serviceUrl: defaultZone:
並且建立另外一個配置檔案application-peer2.yml:
server: port: 8769 spring: profiles: peer2 eureka: instance: hostname: peer2 client: serviceUrl: defaultZone:
這時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: 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是對等的,它們都存有相同的資訊,這就是透過伺服器的冗餘來增加可靠性,當有一臺伺服器當機了,服務並不會終止,因為另一臺服務存有相同的資料。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952307/viewspace-2669129/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 業餘草 SpringCloud教程 | 第十篇: 高可用的服務註冊中心(Finchley版本)SpringGCCloud
- SpringCloud分散式微服務雲架構 第一篇: 服務的註冊與發現Eureka(Finchley版本)SpringGCCloud分散式微服務架構
- spring cloud微服務分散式雲架構--服務註冊(consul)SpringCloud微服務分散式架構
- SpringCloud微服務雲架構構建B2B2C電子商務平臺之-(十)高可用的服務註冊中心SpringGCCloud微服務架構
- SpringCloud分散式微服務雲架構第九篇: 服務鏈路追蹤(Finchley版本)SpringGCCloud分散式微服務架構
- spring cloud構建網際網路分散式微服務雲平臺-高可用的服務註冊中心SpringCloud分散式微服務
- SpringCloud分散式微服務雲架構 第三篇: 服務消費者(Feign)(Finchley版本)SpringGCCloud分散式微服務架構
- SpringCloud分散式微服務雲架構 第七篇: 高可用的分散式配置中心(Config)SpringGCCloud分散式微服務架構
- (五)spring cloud微服務分散式雲架構-配置中心服務化和高可用SpringCloud微服務分散式架構
- 微服務架構之「 服務註冊 」微服務架構
- SpringCloud分散式微服務雲架構第二篇: 服務消費者(rest+ribbon)(Finchley版本)SpringGCCloud分散式微服務架構REST
- springcloud微服務分散式雲架構簡介SpringGCCloud微服務分散式架構
- 微服務架構 | 3. 註冊中心與服務發現微服務架構
- springcloud微服務分散式雲架構-SpringCloud簡介SpringGCCloud微服務分散式架構
- SpringCloud分散式微服務雲架構 第四篇:斷路器(Hystrix)(Finchley版本)SpringGCCloud分散式微服務架構
- (一)springcloud微服務分散式雲架構-SpringCloud簡介SpringGCCloud微服務分散式架構
- spring cloud微服務分散式雲架構(一)-spring cloud 服務註冊與發現SpringCloud微服務分散式架構
- (十四)spring cloud微服務分散式雲架構-服務註冊與發現(Eureka、Consul)SpringCloud微服務分散式架構
- SpringCloud分散式微服務雲架構 第五篇: 路由閘道器(zuul)(Finchley版本)SpringGCCloud分散式微服務架構路由Zuul
- 微服務架構——不可或缺的註冊中心微服務架構
- SpringCloud——Eureka-微服務的註冊中心SpringGCCloud微服務
- 【分散式微服務企業快速架構】SpringCloud分散式、微服務、雲架構快速開發平臺分散式微服務架構SpringGCCloud
- 微服務架構 | 3.2 Alibaba Nacos 註冊中心微服務架構
- (三)springcloud微服務分散式雲架構-SpringCloud整合專案簡介SpringGCCloud微服務分散式架構
- silky微服務框架服務註冊中心介紹微服務框架
- 微服務架構 | 3.4 HashiCorp Consul 註冊中心微服務架構
- 微服務架構 | 3.1 Netflix Eureka 註冊中心微服務架構
- 微服務SpringCloud之服務註冊與發現微服務SpringGCCloud
- (六)spring cloud微服務分散式雲架構-服務閘道器Zuul高階篇SpringCloud微服務分散式架構Zuul
- 企業分散式微服務雲SpringCloud SpringBoot mybatis -服務的註冊與發現(Eureka)分散式微服務GCCloudSpring BootMyBatis
- Spring Cloud微服務架構—服務註冊與發現SpringCloud微服務架構
- Spring Cloud分散式微服務雲架構服務元件SpringCloud分散式微服務架構元件
- SpringCloud分散式微服務雲架構 第八篇: 訊息匯流排(Spring Cloud Bus)(Finchley版本)SpringGCCloud分散式微服務架構
- Spring Cloud微服務分散式雲架構SpringCloud微服務分散式架構
- Spring Cloud雲服務架構 - 企業分散式微服務雲架構構建SpringCloud架構分散式微服務
- 分散式註冊服務中心etcd在雲原生引擎中的實踐分散式
- SpringCloud分散式微服務雲架構 第六篇: 分散式配置中心(Spring Cloud Config)SpringGCCloud分散式微服務架構
- 整合spring cloud雲架構 -高可用的分散式配置中心SpringCloud架構分散式