SpringCloud-Eureka註冊與發現

作者:小毛毛
來源:https://www.cnblogs.com/zgwjava/p/10447542.html


這兩年可以說微服務是熱詞,也是新領域,學習的成本也較高,基礎東西太多比如什麼Dubbo,zookeeper,Springboot等等。Dubbo也是實現服務治理又是阿里出的一套開源RPC框架,但是SpringCloud出現後便立即熱火朝天,當然阿里也加入了SpringCloud的孵化。

什麼是微服務,分佈式?

分佈式:不同的模塊部署在不同的服務器上,可以更好的解決網站高併發。

微服務:架構設計概念,各服務間隔離(分佈式也是隔離),自治(分佈式依賴整體組合)其它特性(單一職責,邊界,異步通信,獨立部署)是分佈式概念的跟嚴格執行 SOA到微服務架構的演進過程。簡單的說把項目拆分成各各模塊,用註冊中心的方式把服務都鏈接在一起

服務提供者與消費關係

  • 服務提供者:提供服務被人調用
  • 消費者:調用服務

今天我們說下SpringCloud的Eureka註冊中心

官方:

Eureka是Netflix開發的服務發現框架,本身是一個基於REST的服務,主要用於定位運行在AWS域中的中間層服務,以達到負載均衡和中間層服務故障轉移的目的。SpringCloud將它集成在其子項目spring-cloud-netflix中,以實現SpringCloud的服務發現功能。

Eureka包含兩個組件:Eureka Server和Eureka Client。

Eureka Server提供服務註冊服務,各個節點啟動後,會在Eureka Server中進行註冊,這樣EurekaServer中的服務註冊表中將會存儲所有可用服務節點的信息,服務節點的信息可以在界面中直觀的看到。

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

在應用啟動後,將會向Eureka Server發送心跳,默認週期為30秒,如果Eureka Server在多個心跳週期內沒有接收到某個節點的心跳,Eureka Server將會從服務註冊表中把這個服務節點移除(默認90秒)。

Eureka Server之間通過複製的方式完成數據的同步,Eureka還提供了客戶端緩存機制,即使所有的Eureka Server都掛掉,客戶端依然可以利用緩存中的信息消費其他服務的API。綜上,Eureka通過心跳檢查、客戶端緩存等機制,確保了系統的高可用性、靈活性和可伸縮性。

環境搭建:

本次環境用Gradle+IDEA

1.先搭建註冊中心

SpringCloud-Eureka註冊與發現

2.主項目Gradle

SpringCloud-Eureka註冊與發現

SpringCloud-Eureka註冊與發現

SpringCloud-Eureka註冊與發現

3.註冊中心啟動類

SpringCloud-Eureka註冊與發現

4.註冊中心yml

SpringCloud-Eureka註冊與發現

5.啟動註冊中心訪問8888


SpringCloud-Eureka註冊與發現


這個為Eureka的信息頁面 可以看到這個時候 Instances currently registered with Eureka裡面是No instances available 也就是這個時候還沒有服務註冊進來,下面我們寫註冊方

SpringCloud-Eureka註冊與發現

這個模塊為solr

SpringCloud-Eureka註冊與發現

yml

SpringCloud-Eureka註冊與發現

這時候我們啟動這個服務

SpringCloud-Eureka註冊與發現

這個時候可以看到 有個服務已經註冊進來

這個就是實現了 註冊也發現,那我們緊接這 如何實現服務與服務之間調用呢?我現在想project-shopping-mall模塊的controller調用solr的controller如何實現呢

SpringCloud-Eureka註冊與發現

RestTemplate表示網絡請求 在啟動類裡把他實例

SpringCloud-Eureka註冊與發現

這個為調用solr的controller根據名字調用

SpringCloud-Eureka註冊與發現

意思就是說 我在shop裡調用solr的controller他會返回一個從solr查詢到數據

我們來嘗試下

shop模塊裡有thymeleaf模板展示數據

SpringCloud-Eureka註冊與發現

SpringCloud-Eureka註冊與發現

可以看到 已經成功拿到數據

到這裡,我們已經實現服務的註冊與發現,下章說 鏈路跟蹤,有問題請及時評論。


分享到:


相關文章: