av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

簡單了解springboot eureka交流機制

瀏覽:3日期:2023-05-23 09:10:04

一 前言

這篇文章參考了官方文檔,主要是描述了eureka client 和 eureka server 之間的交流機制; peer to peer 的 對等復制交流機制;

eureka 官方文檔

二 server client 之間的交流

euraka 的 client 與 server 之間的交流主要通過如下方面;

2.1 Register

Register (服務注冊) ; Eureka client 會向 Eureka server 注冊 關于自生運行實例的信息,比如 ip 地址,主機名,健康狀態;

2.2 Renew

Renew(服務續約);Eureka client 會向 Eureka server 每隔30秒發送心跳;續約的目的是通知 Eureka server 自己代表的實例是處于存活狀態;如果 Eureka server 90 秒內 未收到 續約心跳,就會將這個實例從服務列表中剔除;官方建議是不要修改續約間隔,原因是服務器要使用這些信息去確認 Eureka server 與 Eureka client 之間的交流是否存在廣泛傳播的問題;

簡單了解springboot eureka交流機制

2.3 Fetch Registry

Fetch Registry(抓取注冊列表);Eureka clients 會 從 Eureka server 中 抓取注冊的服務列表并且緩存到本地;Eureka clients 緩存本地的服務列表信息會以30秒為間隔定期更新增量信息(上次抓取與當前抓取的服務列表之間不同的信息);通常 Eureka server 會保存增量信息3分鐘;因此,Eureka clients 每個增量抓取的服務信息有可能是相同的實例;Eureka client 會自動處理這些重復的信息;

如果處于一些原因導致抓取的信息不匹配,Eureka Client 就會重新抓取整個注冊列表的服務信息;Eureka 抓取的信息是以json或者xml格式,通常是josn格式,并且是被壓縮過信息,這些壓縮過的信息與沒壓縮過的細信息是相同,壓縮的目的就是減小體積,提升性能;

簡單了解springboot eureka交流機制

2.4 Cancel

Cancel(服務下線);Eureka client 會發送 下線請求給 Eureka server ,Eureka server 就會將 這個 client 的實例從注冊列表中剔除;發送下線請求代碼如下:

DiscoveryManager.getInstance().shutdownComponent()

2.5 Time Lag

Time Lag (時間差);所有的 Eureka client操作都會反應給 Eureka Server 或者 接下來其他的 Eureka client ;由于 Eureka server 會緩存 有效信息并根據時間周期更新,Eureka Client 也會 根據時間周期定期更新增量信息;因此,可能會占據2分鐘左右的時間將更新的信息全部發送到Eureka Client ;

三 peer to peer 之間的交流

3.1 故障處理

Eureka clients 與 Eureka server 之間的交流是在相同的zone之間交流;如果 server發生問題或者不在相同的zone中,client 就會將 故障轉移到server 的其他zone中處理,每個node中都會有一個zone用于專門處理故障;

3.2 peer to peer

簡單了解springboot eureka交流機制

如果 server 開始接受流量,Eureka client所有的操作都會在server 上執行,附近的 集群node就會嘗試復制一份server已知信息到自己的node;如果Eureka clinet 操作出于某些原因失敗了,這些信息就會遺留到下次心跳進行協調,心跳也會在server之間復制;

如果server啟動 ,就會嘗試獲取附近 node 的信息復制一份過來;如果從這個node復制過來的信息存在問題,就會放棄與之peer to peer(對等復制);如果client續約的時間低至一個閾值(15 分鐘內低于 85%),那么server 也會停止這些過期的 client 以保護 已經注冊的信息;

peer to peer 也就是 eureka 的自我保護機制; 當 Eureka client 與 Eureka server之間存在網絡分區的情況,Eureka server 會 保護已經保存的信息,此時 Eureka client 是不能向 Eureka server 注冊自己,最好的方法就是嘗試向其他的 Eureka server注冊自己;在這種情況下 server 無法從附近的 node 獲取注冊信息,此時會等待 5分鐘 讓 client 注冊信息,因此流量傾斜到某組實例,會造成容量問題;

3.3 peer之間斷網

peer之間斷網會發生如下情況:

peers 之間心跳復制就會失敗,server 會檢查到這種情況并且進入自我保護機制,保護當前已經保存的信息;

server會出現孤立情況,換句話說有些 Eureka Client 會 收到 新的注冊信息,有些則收不到;也就是我們經常說的數據丟失;

當網絡恢復并且穩定,peers 之間能夠進行健康交流,注冊信息會自動的同步到其他server;

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 久久国产欧美日韩精品 | 51ⅴ精品国产91久久久久久 | 色婷婷九月 | 日韩av资源站 | 九九综合 | 亚洲国产欧美精品 | 国产精品a一区二区三区网址 | 91久久久久 | 97操操| 久久久一区二区三区四区 | 激情综合五月 | 久久一视频 | 亚洲狠狠 | a级片在线 | 日本字幕在线观看 | 国产精品自产拍 | 自拍偷拍第一页 | 中文字幕第一页在线 | 成人欧美一区二区三区视频xxx | 伊人久久在线观看 | 日韩在线一区二区 | 国产午夜精品理论片a大结局 | 亚洲精品福利视频 | 国产真实精品久久二三区 | 日韩久久久久久 | 欧美老少妇一级特黄一片 | 黄色一级免费观看 | 日日夜夜精品免费视频 | 国产精品一区二区久久 | 成人精品影院 | 色偷偷人人澡人人爽人人模 | 国产成人高清成人av片在线看 | 久久91| 精品国产乱码久久久久久牛牛 | 亚洲视频在线看 | 美女一区 | 一区二区三区免费 | 午夜综合 | 亚洲一区二区三区在线视频 | 国产7777| 国产在线播|