Eureka的弱一致性

2021-08-21 16:33:20 字數 447 閱讀 5399

eureka是spring cloud中的乙個元件,提供註冊發現功能。它是乙個分布式應用,用於管理微服務位址。通過部署多個eureka server避免單點故障。

隨著微服務的規模越來越大,eureka的便利性越來越明顯。訪問服務只需要通過eureka就可以了。但是eureka也有它不好的地方,就是弱一致性,eureka只能保證最終一致性,不能保證強一致性。由於非同步性,eureka client從eureka server獲取的微服務節點會有失效的。這樣,當訪問失效的節點就會產生錯誤。所以開發的時候最好採用重試機制減少出錯的可能。是最終一致性更加趨向於強一致性。

ribbon是乙個客戶端負載均衡元件,它也屬於spring cloud生態環境。它被用於微服務客戶端,在請求微服務的時候實現負載均衡。其中一些配置就實現了重試機制,這種機制由兩部分組成,一部分定義重試同一節點的次數,一部分定義重試多少個節點。通過配置這種機制就可以改善訪問失效問題。

強一致性 弱一致性 最終一致性

這種方式在es等分布式系統中也有體現,可以設定主shard提交即返回成功,或者需要replica shard提交成功再返回。提到分布式架構就一定繞不開 一致性 問題,而 一致性 其實又包含了資料一致性和事務一致性兩種情況,本文主要討論資料一致性 事務一致性指acid 複製是導致出現資料一致性問題的唯...

資料庫的強一致性和弱一致性

強一致性可以理解為在任意時刻,所有節點中的資料是一樣的。同一時間點,你在節點a中獲取到key1的值與在節點b中獲取到key1的值應該都是一樣的 弱一致性 相當於非同步 系統並不保證續程序或者執行緒的訪問都會返回最新的更新過的值。系統在資料寫入成功之後,不承諾立即可以讀到最新寫入的值,也不會具體的承諾...

保證一致性嗎 Kafka的一致性保證

魚和熊掌不可兼得。系統設計需要根據具體的應用場景做出權衡。系統設計者可以通過配置kafka,來得到不同程度的需求滿足。每個kafka主題 topic 都分為多個分割槽 partitions 每個分割槽可以具有多個副本 replica 其中乙個副本是主分割槽 leader 所有讀寫請求都由主分割槽提供...