一、概述
上一章已經看到 Eureka server 中已經注冊了 microserver-user 這個微服務,在本文中將講解 Eureka client 是如何注冊到Eureka Server中去的,再次聲明:作者能力有限,表達能力不足,這里將不會講述概念性的講解,想了解概念的朋友可自行百度查閱或官網查閱自行理解,同時盡可能的照顧到新人朋友,教大家如何從官網中學習一門技術,如有錯誤的地方希望大家指出共同進步。
本文所有Demo都將上傳至GitHub中方便各位朋友查看學習,如您對本人的編碼風格或其他建議可以聯系博主。
二、目錄結構
細心的朋友或許已經發現這里的目錄結構已經變成了多模塊項目,api 后續需要整合 Spring Cloud OpenFeign 進行服務間調用,不會創建Maven多模塊項目的朋友,可以翻閱作者很久以前寫過的博客,這里就不做過多介紹了。
三、構建 Eureka client 端
1)首先還是需要先看看官方文檔是如何說明的,從文檔中了解到,需要為項目引入Eureka-client 相關jar包
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency>
2)由於microserver-user 服務是是web項目 所以還需要添加對應的web包。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
3)了解官方文檔給的簡單配置
4)由於我們的 Eureka Server端口是需要進行用戶認證的,所以我們需要在這個基礎上進行一些小小的改動
eureka: instance: prefer-ip-address: true instance-id: ${spring.application.name}(${spring.cloud.client.ip-address}:${server.port}) lease-renewal-interval-in-seconds: 10 client: service-url: defaultZone: http://user:password123@localhost:8761/eureka/
這里看了了個新的屬性 lease-renewal-interval-in-seconds 上一章已經講解到如何從官網查看配置信息,官網的這段大概意思就是,Eureka client 默認 30秒會向 Server 端發送一次心跳,告訴Server 端 我還活着~~~ ^_^ 大哥~別殺我,作為我們的大哥 Server端 默認是90秒對沒有接收到 client 端的續租請求將會舉起屠刀。當然這些都是可以進行配置的
不了解的朋友可以研究下
最后在在啟動類上添加 @EnableEurekaClient ,注:在 Edgware 以后的版本該注解可以省略。