StackTc
2018-08-15 13:20
采纳率: 61.9%
浏览 1.5k
已采纳

关于dubbo跟zk中a服务访问b集群的问题

如题,现在有一个a服务访问b,但是b是集群的,那么a访问哪个b是在哪里决定的呢,
是在zk里面计算的还是在a处还是在b。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • threenewbee 2018-08-15 15:42
    已采纳

    dubbo注册中心返回服务提供者的列表给消费者,消费者从服务提供者列表中,按照软负载均衡算法,选择一台发起请求。
    dubbo::reference里可以负载均衡。
    zookeeper本身是不提供负载均衡的策略,但是可以在代理层做,如果你前端是dubbo,那么就不需要,dubbo就能做。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 玄尺 2018-08-15 13:31

    当前的微服务和RPC都是在客户端进行负载均衡,dubbo会从zk中获取服务列表,然后在客户端进行选择并建立连接。当机器动态变化,zk会将消息推送给客户端,此时客户端维护的服务列表变化,会基于策略进行修改。

    评论
    解决 无用
    打赏 举报
  • lihongbiao0610 2018-08-17 07:05

    a服务访问b时,b的集群服务列表是通过zk获取,然后访问那个b是在a处自己决定的。就是是客户端自己决定。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题