4 Eureka的高可用
如果一台 eureka 當機了咋辦呢,為了實作高可用, 如果直接加一台伺服器并無任何卵用,
4.1 考慮将兩台 eureka 互相注冊
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 複制得到兩份 eureka,并以端口區分
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 将 eureka1注冊到 eureka2上并啟動
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 将 eureka2注冊到 eureka1上并啟動
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 發現 client 在1,2同時都注冊成功了!
假如此時 eureka1當機了,會發生什麼呢?
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 我們來将1給關閉
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 發現2依舊存活,并且 client 還在連接配接
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 若此時再 client 端重新開機又會發生什麼呢?
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 因為無法注冊,自然報錯了, E2上也沒有 client 端再連接配接了
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 那麼問題來了,怎麼才能保證 E1當機後, client 仍能注冊在 E2上呢?隻要保持每次都同時往兩個 E 注冊
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 同理可得,當有3個 E 時,如此互相注冊
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 建立 E3
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 對于我們的本地開發環境,部署一個 E 即可,不再叢集
5 Eureka總結
◆ @EnableEurekaServer @EnableEurekaClient
◆ 心跳檢測、健康檢查、負載均衡等功能
◆ Eureka的高可用,生産上建議至少兩台以上
◆
分布式系統中 ,服務注冊中心是最重要的基礎部分
結構圖
Spring Cloud 微服務實戰(三) - 服務注冊與發現(下下篇)4 Eureka的高可用5 Eureka總結參考 參考
SpringCloud Finchley三版本微服務實戰 網際網路Java進階面試訓練營