天天看點

SpringCloud-元件

SpringCloud-元件

eureka作為Springcloud項目的服務注冊與發現元件。 采用CS的設計模式,Eureka Server作為服務注冊功能的伺服器,是注冊中心,系統中的其他微服務,作為Eureka的用戶端(Eureka Client)連接配接到 Eureka Server 并維持心跳連接配接。 維護人員可以通過注冊中心,檢視系統中的各個微服務是否正常運作。

Eureka包含了兩個元件:

Eureka Server:提供服務注冊服務,各個節點啟動後,會在Eureka Server中進行注冊,這樣EurekaServer中的服務系統資料庫中将會存儲所有可用服務節點的資訊,服務節點的資訊可以在界面中直覺的看到。

Eureka Client:一個java用戶端,用于簡化與Eureka Server的互動,用戶端同時也就是一個内置的、使用輪詢(round-robin)負載算法的負載均衡器。

在應用啟動後,将會向Eureka Server發送心跳,預設周期為30秒,如果Eureka Server在多個心跳周期内沒有接收到某個節點的心跳,Eureka Server将會從服務系統資料庫中把這個服務節點移除(預設90秒)。

1、建立Eureka注冊中心子產品

2、引入eureka server坐标依賴

3、編寫application.yml配置檔案

4、主啟動類添加@EnableEurekaServer注解

5、啟動項目,通路項目路徑,能出現eureka頁面,表示項目沒問題。

1、引入eureka client坐标依賴

2、application.yml檔案中添加eureka配置

3、主啟動類添加@EnableEurekaClient注解

先啟動EurekaServer子產品,再啟動注冊的子產品,檢視eureka頁面中是否能檢索到該微服務。

叢集版為多個Eureka服務互相注冊,避免由單一注冊中心引發的單點故障。

1、搭建另一個端口為7002的Eureka單體版服務

2、修改hosts檔案,實作端口映射

位址:C:\Windows\System32\drivers\etc

添加内容:

3、修改配置,改為叢集配置。

hostname改為唯一名稱

互動位址,改為其他eureka服務位址,多個用逗号分隔。

将該eureka服務注冊到其他eureka注冊中心中去。

4、其餘用戶端微服務,注冊到eureka叢集,通過修改配置檔案。

1、自定義微服務項目顯示名稱

2、微服務項目連接配接顯示ip位址

對于注冊進Eureka裡面的微服務,可以通過服務發現來獲得該服務的資訊

通過依賴注入的方式擷取DiscoveryClient對象

擷取所有注冊到eureka中的微服務名稱

根據微服務名稱擷取該服務下的項目或者叢集的具體資訊

在主啟動類上添加服務發現用戶端注解:@EnableDiscoveryClient

繼續閱讀