日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

Spring Cloud Eureka 詳解

 

Eureka 是Spring Cloud Netflix 微服務套件中的一部分,它基于Netflix Eureka做了二次開發,主要負責完成微服務架構中的服務治理功能。

Eureka 基礎架構三個核心要素

1:服務注冊中心

2:服務提供者

3:服務消費者

 服務治理主要分為:

1:服務注冊:

在服務治理框架中,通常都會構建一個服務注冊中心,每個服務提供者需要向注冊中心,登記自己的注冊信息。比如IP,端口號,版本號,服務名,通信協議等等附加信息告知注冊中心,注冊中心會根據服務名,進行分類服務清單。例如下圖:

Spring Cloud Eureka 詳解

 

eureka維護分類服務清單,是通過一個雙層Map, 第一層Map的key就是服務名,例如上圖的HELLO-SERVICE,第二層的Key就是具體的實例信息,例如上圖的DLBOOH........:hello-service:8081

2:服務發現

由于在服務治理框架下運作程序,服務間的調用不在是通過指定具體的實例地址來實現,服務間的調用通過服務名來調用,例如:http://hello-service:8081/hello。所以當服務調用方 想要調用服務提供方的接口時,服務調用方是不知道服務提供方的具體實例地址的, 因此調用方需要向注冊中心Eureka咨詢服務,并獲取所有服務的實例清單。例如:現有服務B想要調用服務A,服務B就需要向注冊中心發起請求獲取服務A的實例清單,注冊中心返回服務A的實例清單,然后服務B會從清單中以某種策略輪詢訪問清單中的的實例,實現負載均衡的效果 訪問方式可以通過 Ribbon。

實際生產項目中,不會在每一次請求中都獲取服務列表清單,這樣做效率低下。實際場景中緩存和服務剔除等機制也會有一些不同的實現方式

3:服務同步

當Eureka實現高可用后,服務提供者可分別注冊到集群中的不同服務注冊中心上,也就是說 它們的信息分別被不同的注冊中心維護,此時由于服務中心互相注冊為服務(高可用),當服務提供者發送注冊請求到一個服務注冊中心時,它會將該請求轉發同步給集群中的其他注冊中心,從而實現服務注冊中心的服務同步。通過服務同步,兩個服務提供者的服務信息就可以通過這兩臺服務注冊中心中的任意一臺獲取到

4:服務續約

在注冊完服務之后,服務提供者會維護一個心跳用來持續告訴Eureka“我還活著”,以防止Eureka的剔除服務將該服務從列表清單中排除出去,我們稱該操作為服務續約

關于服務續約有兩個重要的屬性,

##用于定義服務續約任務的調用間隔時間,默認為30秒

eureka.instance.lease-renewal-interval-in-seconds=30

##參數用于定義服務失效的時間,默認為90秒

eureka.instance.lease-expiration-duration-in-seconds=90

5:獲取服務

當服務消費者程序啟動時,它會發送一個Rest請求給注冊中心,來獲取上面注冊的服務清單,為了性能考慮,Eureka會維護一份只讀的服務清單來返回給客戶端,同時該緩存清單會每隔30秒更新一次。

獲取服務是服務消費者的基礎,所以必須確保eureka.client.fetch-registry=true 默認為true,若希望修改緩存清單的更新時間,可以通過eureka.client.registry-fetch-interval-seconds=30 進行修改,默認30秒,參數單位秒

6:服務調用

獲取服務清單后,通過服務名可以獲取實例的名和實例的元數據(ip,port等等)利用Ribbon實現輪詢方式調用服務提供方。

7: 服務下線

當服務下線后,正常情況下 我們是不希望,服務消費方繼續調用已經下線的服務的,所以再服務提供方正常關閉時,會觸發一個服務下線的REST請求,告訴Eureka “我要下線了”。Eureka收到請求后,會將此服務設置為(DOWN),并將此消息廣播到出去,更新緩存清單。

8:服務中心的失效剔除

當服務非正常關閉時,比如機器Down了,斷電,內存溢出,網絡故障等等。這時候是不會觸發服務下線的REST的請求,為了將這些已經無法提供的服務剔除,Eureka Server會在啟動時,創建一個定時任務,默認每隔60秒將清單中超時沒有續約的剔除。

分享到:
標簽:Spring Cloud Eureka
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定