eureka 是 netflix 出品的用於實現服務註冊和發現的工具。 spring cloud 整合了 eureka,並提供了開箱即用的支援。其中, eureka 又可細分為 :
eureka server:註冊中心服務端,用於儲存了各個服務所在的機器和埠號。
eureka client:註冊中心客戶端,負責將這個服務的資訊註冊到eureka server中,向註冊中心註冊服務的應用都可以叫做eureka client(包括eureka server本身)。
eureka的原理:eureka client在啟動後,會周期性地向eureka server傳送心跳(預設週期為30秒),如果eureka server在一定時間內沒有接收到某個節點的心跳,eureka server將會登出該節點(預設90秒)。但是如果每個服務都沒有返回心跳怎麼辦呢,難道把所有節點都刪了?
當然不會,eureka本身提供了自我保護機制:
自我保護機制是為了防止誤殺服務而提供的乙個機制。
eureka server 節點在短時間內丟失了過多例項的連線時(比如網路故障或頻繁啟動關閉客戶端)節點會進入自我保護模式,保護註冊資訊,不再刪除註冊資料,故障恢復時,自動退出自我保護模式。
eureka server之間通過複製的方式完成資料的同步,eureka還提供了客戶端快取機制,即使所有的eureka server都掛掉,客戶端依然可以利用快取中的資訊消費其他服務的api。綜上,eureka通過心跳檢查、客戶端快取等機制,確保了系統的高可用性、靈活性和可伸縮性。
深入理解simhash原理
lsh locality sensitive hashing 是區域性敏感性hashing,它與傳統的hash是不同的。傳統hash的目的是希望得到o 1 的查詢效能,將原始資料對映到相應的桶內。lsh的基本思想是將空間中原始資料相鄰的2個資料點通過對映或者投影變換後,這兩個資料點在新的空間中的相鄰...
HDFS原理深入理解
1 hdfs概述 1 資料量越來越多,在乙個作業系統管轄的範圍存不下了,那麼就分配到更多的作業系統管理的磁碟中,但是不方便管理和維護,因此迫切需要一種系統來管理多台機器上的檔案,這就是分布式檔案管理系統 2 是一種允許檔案通過網路在多台主機上分享的檔案系統,可讓多機器上的多使用者分享檔案和儲存空間。...
深入理解hashmap的原理
一 什麼是雜湊?雜湊也叫雜湊,是將不同長度的輸入通過乙個函式轉換成同乙個長度輸出的過程,這個輸出的值叫雜湊值,這個轉換函式叫雜湊函式,雜湊函式所採用的演算法加雜湊演算法。實際上是乙個通過訊息得到訊息摘要的方法 二 什麼是雜湊表?雜湊表是乙個通過key訪問value的資料結構,它是基於乙個陣列,存資料...