全站资源开放下载,感谢广大网友的支持
链接失效请移步职涯宝平台的学习路线|资源下载分类
支持用户留言评论_客服实时在线_问题解决更快
支付宝赞助-Java帮帮社区
微信赞助-Java帮帮社区

Dubbo入门学习--集群容错模式​(5)

12
发表时间:2018-05-15 11:59

Dubbo入门学习--集群容错模式

集群容错模式:

可以自行扩展集群容错策略

Available Cluster
  • 只调用可执行的服务


Failover Cluster
  • 失败自动切换,当出现失败,重试其它服务器。(缺省)

  • 通常用于读操作,但重试会带来更长延迟。

  • 可通过retries="2"来设置重试次数(不含第一次)。

Failfast Cluster
  • 快速失败,只发起一次调用,失败立即报错。

  • 通常用于非幂等性的写操作,比如新增记录。

Failsafe Cluster
  • 失败安全,出现异常时,直接忽略。

  • 通常用于写入审计日志等操作。

Failback Cluster
  • 失败自动恢复,后台记录失败请求,定时重发。

  • 通常用于消息通知操作。

Forking Cluster
  • 并行调用多个服务器,只要一个成功即返回。

  • 通常用于实时性要求较高的读操作,但需要浪费更多服务资源。

  • 可通过forks="2"来设置最大并行数。

Broadcast Cluster
  • 广播调用所有提供者,逐个调用,任意一台报错则报错。(2.1.0开始支持)

  • 通常用于通知所有提供者更新缓存或日志等本地资源信息。

重试次数配置如:(failover集群模式生效)

<dubbo:service retries="2" />

或:

<dubbo:reference retries="2" />

或:

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

集群模式配置如:

<dubbo:service cluster="failsafe" />

或:

<dubbo:reference cluster="failsafe" />


集群容错模式实现类:

Dubbo默认的集群容错模式是Failover Cluster,失败自动切换,当出现失败,重试其他服务器。我们分析一下其失败重试的原理。

其关键是通过一个for循环,如果第一次调用成功则return返回,如果失败捕捉异常之后再尝试调用其他服务。

长按二维码
关注我们吧


Java帮帮公众号生态

Java帮帮公众号生态

总有一款适合你

Java帮帮-微信公众号

Java帮帮-微信公众号

将分享做到极致

九点编程-公众号

九点编程-公众号

深夜九点学编程

大数据驿站-微信公众号

大数据驿站-微信公众号

一起在数据中成长

Python帮帮-公众号

Python帮帮-公众号

人工智能,爬虫,学习教程

程序员生活志-公众号

程序员生活志-公众号

互联网,职场,程序员那些事儿

Java帮帮学习群生态

Java帮帮学习群生态

总有一款能帮到你

Java学习群

Java学习群

与大牛一起交流

大数据学习群

大数据学习群

在数据中成长

九点编程学习群

九点编程学习群

深夜九点学编程

python学习群

python学习群

人工智能,爬虫

测试学习群

测试学习群

感受测试的魅力

Java帮帮生态承诺

Java帮帮生态承诺

一直坚守,不负重望

初心
勤俭
诚信
正义
分享
合作品牌 非盈利生态-优质内容分享传播者
友链交换:加帮主QQ2524138991 留言即可 24小时内答复  
会员登录
获取验证码
登录
登录
我的资料
留言
回到顶部