码迷,mamicode.com
首页 > 其他好文 > 详细

Dubbo服务集群

时间:2017-09-24 16:20:35      阅读:766      评论:0      收藏:0      [点我收藏+]

标签:自动   find   容错   cluster   实现   性能调优   方式   lsa   service   

一、什么叫Dubbo服务集群

    指把同一个服务部署到多台机器,然后通过Dubbo服务集群的容错配置实现一台机器的服务挂掉之后自动切换到另外的一台机器

二、Dubbo服务集群容错配置——集群容错模式

标签:<dubbo:service>、<dubbo:reference>、<dubbo:consumer>、<dubbo:provider>

属性:cluster

类型:string

是否必填:可选

缺省值:failover

作用:性能调优

集群方式:可选:failover/failfast/failsafe/failback/forking

兼容性:2.0.5以上版本

1、Failover Cluster(dubbo缺省配置)

失败自动切换,当出现失败,重试其它服务器(缺省)。通常用于读操作,但重试会带来更长延迟可通过retries="2"来设置重试次数(不含第一次)

1.1 可以在服务提供方配置,不配置时也是默认的如下配置

<dubbo:service cluster="failover" retries="2" />

1.2  可以在服务消费方配置,不配置时也是默认的如下配置

<dubbo:reference cluster="failover" retries="2" />

1.3 可以在消费方指定调用某个方法失败时的重试调用次数

<dubbo:reference>
<dubbo:method name="findFoo" retries="2" />
</dubbo:reference>

2、Failfast Cluster

快速失败,只发起一次调用,失败立即报错。通常用于非幂等性的写操作,比如新增记录

2.1 可以在服务提供方配置

<dubbo:service cluster="failfast"  />

2.2  可以在服务消费方配置

<dubbo:reference cluster="failfast />

3、Failsafe Cluster

失败安全,出现异常时,直接忽略。通常用于写入审计日志等操作

3.1 可以在服务提供方配置

<dubbo:service cluster=""failsafe""  />

3.2  可以在服务消费方配置

<dubbo:reference cluster=""failsafe"" />

4、Failback Cluster

失败自动恢复,后台记录失败请求,定时重发。通常用于消息通知操作

4.1 可以在服务提供方配置

<dubbo:service cluster="failback" />

4.2  可以在服务消费方配置

<dubbo:reference cluster="failback" />

5、Forking Cluster

并行调用多个服务器,只要一个成功即返回。通常用于实时性要求较高的读操作,但需要浪费更多服务资源可通过forks="2"来设置最大并行数。

5.1 可以在服务提供方配置

<dubbo:service cluster="forking" />

5.2  可以在服务消费方配置

<dubbo:reference cluster="forking" />

三、集群容错配置的选择

一般情况下failover(读操作)和failfast(写操作)就可以满足需求;failover集群容错的retries的属性值改为"0"时等价于failfast

Dubbo服务集群

标签:自动   find   容错   cluster   实现   性能调优   方式   lsa   service   

原文地址:http://www.cnblogs.com/leeSmall/p/7587334.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!