什么是服務治理: Spring Cloud封裝了Netflix公司開發的Eureka模塊來實作服務治理 在傳統的rpc遠程呼叫框架中,管理每個服務與服務之間依賴關系比較復雜,管理比較復雜,所以需要使用服務治理,管理服務于服務之間依賴關系,可以實作服務呼叫、負載均衡、容錯等,實作服務發現于注冊, 什么是服務注冊與發現: Eureka采用了CS的設計架構,Eureka Server作為服務注冊功能的服務器,它是服務注冊中心,而系統中的其他微服務,使用Eureka的服務端連接到Eureka Server并維持心跳鏈接,這樣系統的維護人員就可以通過Eureka Server來監控系統中各個微服務是否正常運行, 在服務注冊與發現中,有一個注冊中心,當服務器啟動的時候,會把當前自己服務器的資訊,比如 服務地址 通訊地址等以別名方式注冊到注冊中心上,另一方(消費者,服務提供者),以該別名的方式去注冊中心上獲取到實際的服務通訊地址,然后在實作本地RPC呼叫RPC遠程呼叫框架核心設計思想 :在注冊中國新,因為使用注冊中心管理每個微服務與服務之間的一個依賴關系(服務治理概念),在任何rpc遠程框架中,都會有一個注冊中心(存放服務地址相關資訊(介面地址))
Eureka包含兩個組件:Eureka Server和Eureka Client
Eureka Server提供服務注冊服務:
各個微服務節點通過配置啟動后,會在EurekaServer中進行注冊,這樣EurekaServer中的服務注冊表中會將存盤所有可用服務節點的資訊,服務節點的資訊可以在界面中直觀看到,
EurekaClient通過注冊中心進行訪問:
是一個Java客戶端,用于簡化Eureka Server的互動,客戶端同事也具備一個內置的、使用輪詢(round-robin)負載演算法的負載均衡器,在應用啟動后,將會向Eureka Server發送心跳(默認周期為30秒),如果Eureka Server在多個心跳周期內沒有接收到某個節點的心跳,EurekaServer將會從服務注冊表中把這個服務節點移除(默認90秒)
Eureka Server
服務注冊:將服務資訊注冊進注冊中心
服務發現:從注冊中心上獲取服務資訊
實質:存key服務命 取value呼叫地址
作業流程:
1.先啟動eureka注冊中心
2.啟動服務提供者payment制醋服務
3.支付服務啟動后會把自身資訊(比如服務地址以別名方式注冊進eureka)
4.消費者order服務在需要呼叫介面時,使用服務別名取注冊中心獲取實際的RPC遠程呼叫地址
5.消費者獲得呼叫地址后,底層實際是利用HttpClien技術實作遠程呼叫
6.消費者獲得服務地址后會快取在本地jvm記憶體中,默認每間隔30秒更新一次服務呼叫地址
微服務RPC遠程服務呼叫最核心的是什么:高可用
搭建Eureka注冊中心集群,實作負載均衡+故障容錯
Eureka保護模式:
保護模式主要用于一組客戶端和Eureka Server之間存在網路磁區場景下的保護,議案進入保護模式,Eureka Server將會嘗試保護器服務注冊表中的資訊,不在洗掉服務注冊表中的資料,也就是不會注銷任何微服務,
如果在Eureka Server的首頁看到了以下這段提示,則說明Eureka進入了保護模式
為什么而會產生Eureka自我保護機制:
為了防止EurekaClient可以正常運行,但是與EurekaServer網路不通情況下,EurekaServer不會立刻將EurekaClint服務剔除,
自我保護機制:
默認情況下,如果EurekaServer在一定時間內沒有接收到某個微服務實體的心跳,EurekaServer將會注銷該實體(默認90秒),但是當網路磁區故障發生(延遲、卡頓、擁擠)時,微服務與EurekaServer之間無法正常通信,以上行為可能變得非常危險了,因為微服務本身其實時健康的,此時本不應該注銷這個微服務,Eureka通過“自我保護模式”來解決這個問題,當EurekaServer節點在短時間內丟失過多客戶端時(可能發生了網路磁區故障),那么這個節點就會進入自我保護模式,
在自我保護模式中,Eureka Server會保護服務注冊表中的心思,不再注銷任何服務實體,它的設計哲學就是寧可保留錯誤的服務注冊資訊,也不盲目注銷任何可能健康的服務實體,
綜上,自我保護模式是一種應對網路例外的安全保護措施,他的架構哲學時寧可同時保留所有的微服務(健康的微服務和不健康的微服務都會保留)也不盲目注銷任何健康的微服務,使用自我保護模式,可以讓Eureka集群更加的健壯、穩定,
-----------------------------------------------我是分割線-----------------------------------------------
Hei~好久不見
不知道你現在過得怎樣
也不敢去找你
是我當時的自私導致今日的結局
我也沒資格找你
又要過一個沒有你陪伴的新年了
照顧好自己
希望能有再見面的一天
愿 一切安好
下班!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/257651.html
標籤:其他
下一篇:例外
