美文网首页
Dubbo之集群

Dubbo之集群

作者: 那谁319 | 来源:发表于2019-07-06 16:46 被阅读0次

    为了避免单点故障,现在的应用通常至少会部署在两台服务器上。对于一些负载比较高的服务,会部署更多的服务器。而Dubbo作为RPC(远程服务调用)的一种实现,在面对集群部署时,RPC的实现需要面临这样的问题:

    • 1、服务消费者是否需要决定、如何决定选择哪个服务提供者进行调用?
    • 2、服务调用失败时的处理措施是重试呢还是抛出异常、亦或是只打印异常等
      作为一款优秀的RPC实现这些个问题都是需要考虑的。下面是Dubbo给出的解决方案

    选择调用的服务提供者

    • Dubbo 对于服务提供者的抉择是基于负载均衡算法来实现的,主要提供了4种负载均衡实现:
      • 分别是基于权重随机算法的 RandomLoadBalance、
      • 基于最少活跃调用数算法的 LeastActiveLoadBalance、
      • 基于 hash 一致性的 ConsistentHashLoadBalance,
      • 以及基于加权轮询算法的 RoundRobinLoadBalance
    • Dubbo选择调用的服务提供者的具体实现源码。参考官网

    服务调用失败的容错机制

    • Dubbo 主要提供了这样几种容错方式:
      • Failover Cluster - 失败自动切换
      • Failfast Cluster - 快速失败
      • Failsafe Cluster - 失败安全
      • Failback Cluster - 失败自动恢复
      • Forking Cluster - 并行调用多个服务提供者
    • Dubbo容错机制的具体实现源码。参考官网

    相关文章

      网友评论

          本文标题:Dubbo之集群

          本文链接:https://www.haomeiwen.com/subject/wjephctx.html