天天看點

SpringCloud(一) 注冊中心Eureka配置

Eureka是Netflix提供的開源産品,用于服務注冊和發現的注冊中心。是SpringCloud體系的重要核心元件。

背景

注冊中心是管理各種服務的一個服務子產品 ,在一個分布式微服務系統中,通過注冊中心對其他服務進行注冊、發現、熔斷、負載、降級等處理,以實作整個分布式微服務系統的平穩、高效的運作。

服務A調用服務B

普通系統服務間調用:

SpringCloud(一) 注冊中心Eureka配置

注冊中心系統中調用:

SpringCloud(一) 注冊中心Eureka配置

原理

Spring Cloud 封裝了 Netflix 公司開發的 Eureka 子產品來實作服務注冊和發現。Eureka 采用了 C-S 的設計架構。Eureka Server 作為服務注冊功能的伺服器,它是服務注冊中心。而系統中的其他微服務,使用 Eureka 的用戶端連接配接到 Eureka Server,并維持心跳連接配接。這樣系統的維護人員就可以通過 Eureka Server 來監控系統中各個微服務是否正常運作。Spring Cloud 的一些其他子產品(比如Zuul)就可以通過 Eureka Server 來發現系統中的其他微服務,并執行相關的邏輯。

Eureka由兩個元件組成:Eureka伺服器和Eureka用戶端。Eureka伺服器用作服務注冊伺服器。Eureka用戶端是一個java用戶端,用來簡化與伺服器的互動、作為輪詢負載均衡器,并提供服務的故障切換支援。Netflix在其生産環境中使用的是另外的用戶端,它提供基于流量、資源使用率以及出錯狀态的權重負載均衡。

Eureka的基本架構:

SpringCloud(一) 注冊中心Eureka配置

1、Eureka Server :提供服務注冊和發現;

2、Service Provider:提供服務,将自身注冊到Eureka,便于消費都調用;

3、Service Consumer:消費服務,從Eureka擷取服務清單,以調用服務;

案例

 1. eureka項目結構:

(1).springcloud_eureka父項目的pom檔案 (就做一個版本的控制)

(2) eureka_server注冊中心的pom檔案

2. application.properties(可以采用yml形式)配置如下:

 3.項目主類的内容:

5.運作項目後,在本地浏覽器通路:http://localhost:8761/ 即可看到注冊中心頁面,至此,最簡單的eureka注冊中心完成。

注意:我這裡 http://localhost:9000/eureka/ 打不開 !! 不知原因

SpringCloud(一) 注冊中心Eureka配置