阿里为什么不用 ZooKeeper 做服务发现?

原因

  在服务发现领域,ZooKeeper并不是最佳的选择。原因可以从客户端和服务端两个方向进行分析。
  

客户端

  1. ZK服务端集群的地址列表是写死在客户端的,不支持动态变更;
  2. 不支持同机房优先策略;
  3. 没有针对服务端集群完全不可用时的容灾手段;

服务端

  1. 写能力不足,不支持水平扩展(随着服务规模的增大,服务上下线、发布和健康监测等对需要良好的写性能);
  2. 健康监测手段单一,只有TCP的活性监测,服务健康与否的逻辑更应该开放给服务提供方定义;

解决方案

阿里内部自己实现了ConfigServer,外部开源的服务发现框架主要是Eureka。

参考:

  1. https://kuaibao.qq.com/s/20180606B0DUOJ00?refer=spider
  2. https://blog.csdn.net/jenny8080/article/details/52448403

猜你喜欢

转载自blog.csdn.net/yangguosb/article/details/80782850