Eureka服務註冊
我們現在已經將Eureka註冊中心搭建完畢,現在我們開始完成Eureka的服務註冊,畢竟僅僅只有一個Eureka的註冊中心是沒有意義的
首先我們創建一個bigsoft-product的服務向Eureka註冊中心,創建工程的時候,因爲要使用Eureka-clienth所以在添加了web的插件後還需要引入Eureka Discovery client
自動創建工程會幫我們生產我們需要的pom依賴如下:
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Hoxton.SR1</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
現在我們在當前服務節點的啓動main函數中添加需要的註解@EnableDiscoveryClient(這個註解的含義是將當前項目註冊給服務治理中心)
注意:非常抱歉,以下截圖中都導入錯了,但是在新版本中只需要依賴spring-cloud-starter-netflix-eureka-client,就不需要這個註解了
最後一步依舊和之前註冊中心的使用一樣:添加配置文件
server:
port: 9001
spring:
application:
name: product
eureka:
client:
service-url:
defaultZone: http://localhost:8001/eureka/
其中port:90001指當前服務運行的端口,application-name指spring項目名稱(這裏需要重點注意,以後還要用這裏),eureka-client-service-url 這裏需要填寫需要註冊中心的域,這裏需要和我們的Eureka註冊中西相對於,也就是說:eureka-client-service-url 配置了服務治理中心同樣的地址,這樣它就能夠註冊到之前所配置的服務治理中心
測試:
首先啓動Eureka註冊中心,界面如下:
然後我們啓動剛纔bigsoft-product服務,理想狀態下他會註冊自己的信息到Eureka註冊中心去,我們重啓Eureka界面:
我們發現在Instances currently registered with Eureka(當前在Eureka註冊的實例)這個位置比以前多了一些東西
Application——PRODUCT,其實這就是剛纔我們在服務實例中添加的
spring:
application:
name: product
這行配置所產生的
當前Status Up代表着當前服務節點正常運行
完成了bigsoft-product的註冊,我們趁熱打鐵順便註冊bigsoft-user服務,用於給product提供用戶服務
創建工程的是引入和product相同的插件配置
在啓動函數添加註解:
最後一步添加配置文件:
由於是單擊測試所以要保證端口號的不同(否則端口衝突)
整體配置文件和product中差不多只需要更改application.name和port就可以,我們現在啓動這個微服務
最後刷新我們的Eureka管理頁面:
我們可以清晰的看到這個位置有原來的只有一個PRODUCT新增一個一個APPLICATION爲USER的節點進去,這就證明當前我們的bigsoft-product以及bigsoct-user連個節點都註冊到當前的註冊中心了