面試連環炮系列(十五):說說Eureka的高可用方案


  1. 說說Eureka的高可用方案
    至少3個Eureka實例才能滿足高可用,配置方法如下:

    1. 准備三個節點node1,node2,node3。
    2. 在每個實例的application.xml文件里加入
      eureka.client.service-url.defaultZone: {address},address是其他節點的地址。如果是node1,address就是http://node2/eureka,http://node3/eureka,其他節點依次類推。
    3. 啟動三個實例,注冊信息會在他們之間互相同步。
  2. Eureka的高可用滿足CAP的哪兩項
    Eureka放棄了一致性,保證的是AP。Spring Cloud的開發者認為注冊服務更重要的是可用性,可以接受短期內達不到一致性的狀況。

  3. 如果其中一台Eureka宕機,會出現什么情況
    客戶端在向某個Eureka注冊發現連接失敗,則會自動切換至其它節點,只要有一台Eureka還在,就能保證注冊服務可用,只不過查到的信息可能不是最新的。

  4. 如果客戶端與Eureka失去連接,Eureka會怎么處理
    如果在15分鍾內超過85%的節點都沒有正常的心跳,那么Eureka就認為客戶端與注冊中心出現了網絡故障,此時會出現以下幾種情況:

    1. Eureka不再從注冊列表中移除因為長時間沒收到心跳而應該過期的服務。
    2. Eureka仍然能夠接受新服務的注冊和查詢請求,但是不會被同步到其它節點上(即保證當前節點依然可用)。
    3. 當網絡穩定時,當前實例新的注冊信息會被同步到其它節點中。

參考文章:

https://blog.csdn.net/qq_25484147/article/details/83211517
https://www.cnblogs.com/snowjeblog/p/8821325.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM