我想了解在哪種情況下,我應該通過負載平衡器選擇服務註冊表。服務發現vs負載均衡
從我的理解這兩個解決方案覆蓋了相同的功能。
舉例來說,如果我們考慮consul.io作爲一個功能列表,我們有:
- 服務發現
- 健康檢查
- 鍵/值存儲
- 多數據中心
如果負載平衡器像Amazon ELB例如有:
- 配置只能從負載平衡器
- 接受流量使用以下協議接受流量:HTTP,HTTPS(安全HTTP),TCP和SSL(安全TCP)
- 分發向多個可用區中的EC2實例發送請求
- 連接數與負載平衡器接收到的併發請求數成比例
- 配置Elastic Load Balancing用於監視EC2實例運行狀況的運行狀況檢查向負載平衡器註冊,以便它只能將請求發送到健康實例
- 您可以在使用安全(HTTPS/SSL)連接的網絡上使用端到端流量加密
- [EC2-VPC] You可以創建面向Internet的負載均衡器,該平衡器通過Internet從客戶端接收請求並將它們路由到您的EC2實例或面向內部的負載均衡器,該負載均衡器從VPC中的客戶端獲取請求並將它們路由到您的私有EC2實例子網。 EC2-Classic中的負載平衡器始終面向互聯網。
- [EC2-Classic] EC2-Classic的負載均衡器支持IPv4和IPv6地址。 VPC的負載平衡器不支持IPv6地址。
- 您可以使用CloudWatch指標,訪問日誌和AWS CloudTrail監控負載均衡器。
- 您可以將面向Internet的負載平衡器與您的域名相關聯。
- 等
因此,在這種情況下,我不理解爲什麼我會選像consul.io
或netflix eureka
在Amazon ELB
服務發現。
我有一種預感,這可能是由於實施客戶端服務發現 VS 服務器端的服務發現,但我不能肯定。
https://stackoverflow.com/questions/46807757/service-discovery-on-aws-ecs-with-application-load-balancer 這個帖子似乎也有同樣的關注 –