本篇內容主要講解“如何應用SpringCloud集成Eureka注冊中心”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何應用SpringCloud集成Eureka注冊中心”吧!
SpringCloud中的核心組件Eureka提供了服務注冊和服務發現功能,管理分布式系統中的各種服務,比如注冊、發現、熔斷、負載均衡等。
SpringCloud:Greenwich.RELEASE SpringBoot :2.1.2.RELEASE
1.引入依賴
父項目
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Greenwich.RELEASE</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
子項目
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency>
2.添加配置application.properties
# 項目端口號 server.port=6001 # 項目名稱 spring.application.name=service-registry # 是否把自己作為服務注冊到其他服務注冊中心,默認true eureka.client.register-with-eureka=false # 是否從其他的服務中心同步服務列表,默認true eureka.client.fetch-registry=false # 設置與Eureka Server交互的地址,查詢服務和注冊服務都需要依賴這個地址。 eureka.client.serviceUrl.defaultZone=http://localhost:${server.port}/eureka/
3.啟動類添加啟動注冊中心
@SpringBootApplication @EnableEurekaServer // 啟用Eureka服務 public class Application { public static void main(String[] args){ SpringApplication.run(Application.class,args); } }
在分布式系統中,注冊中心是最重要的基礎部分,為了防止因為注冊中心故障導致毀滅性災難,必須保證注冊中心的高可用性,我們可以使用集群的方式。
1.創建項目
按照以上介紹創建3個項目
registry-1
registry-2
registry-3
2.修改操作系統的host文件
windows系統 C:\Windows\System32\drivers\etc\hosts
linux系統 /etc/hosts
添加如下配置:
127.0.0.1 service-registry1 127.0.0.1 service-registry2 127.0.0.1 service-registry3
3、配置文件改造
#registry-1.application.properties # 項目端口號 server.port=6001 # 項目名稱 spring.application.name=service-registry #服務注冊中心相互注冊一定要顯示的設置register-with-eureka 和fetch-registry的值為true,否則會服務不可用 # 是否把自己作為服務注冊到其他服務注冊中心 eureka.client.register-with-eureka=true # 是否從其他的服務中心同步服務列表 eureka.client.fetch-registry=true # 設置與Eureka Server交互的地址,查詢服務和注冊服務都需要依賴這個地址。 eureka.client.serviceUrl.defaultZone=http://service-registry2:6002/eureka/,http://service-registry3:6003/eureka/ eureka.instance.appname=service-registry #主機名稱 eureka.instance.hostname=service-registry1 #服務注冊中心地址
#registry-2.application.properties # 項目端口號 server.port=6002 # 項目名稱 spring.application.name=service-registry #服務注冊中心相互注冊一定要顯示的設置register-with-eureka 和fetch-registry的值為true,否則會服務不可用 # 是否把自己作為服務注冊到其他服務注冊中心 eureka.client.register-with-eureka=true # 是否從其他的服務中心同步服務列表 eureka.client.fetch-registry=true # 設置與Eureka Server交互的地址,查詢服務和注冊服務都需要依賴這個地址。 eureka.client.serviceUrl.defaultZone=http://service-registry1:6001/eureka/,http://service-registry3:6003/eureka/ eureka.instance.appname=service-registry #主機名稱 eureka.instance.hostname=service-registry2
#registry-3.application.properties # 項目端口號 server.port=6003 # 項目名稱 spring.application.name=service-registry #服務注冊中心相互注冊一定要顯示的設置register-with-eureka 和fetch-registry的值為true,否則會服務不可用 # 是否把自己作為服務注冊到其他服務注冊中心 eureka.client.register-with-eureka=true # 是否從其他的服務中心同步服務列表 eureka.client.fetch-registry=true # 設置與Eureka Server交互的地址,查詢服務和注冊服務都需要依賴這個地址。 eureka.client.serviceUrl.defaultZone=http://service-registry1:6001/eureka/,http://service-registry2:6003/eureka/ eureka.instance.appname=service-registry #主機名稱 eureka.instance.hostname=service-registry3
1.服務注冊中心集群相互注冊一定要開啟
register-with-eureka: true fetch-registry: true
2.服務注冊中心集群的spring.application.name一定要一樣
3.eureka.client.serviceUrl.defaultZone:不能出現 localhost,一定要使用host指定主機名
到此,相信大家對“如何應用SpringCloud集成Eureka注冊中心”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。