欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > > 文章正文

Dubbo剖析-服务降级,dubbo剖析降级

来源: javaer 分享于  点击 19153 次 点评:232

Dubbo剖析-服务降级,dubbo剖析降级


一、前言

dubbo提供了一些服务降级措施,当服务提供端某一个非关键的服务出错时候,dubbo可以对消费端的调用进行降级,这样服务消费端就避免了在去调用出错的服务提供端,而是使用自定义的返回值直接在在本地返回。

二、如何使用服务降级

  • 直接返回mock值 image.png

mock=force:return+null 表示消费方对该服务的方法调用都直接返回 null 值,不发起远
程调用。用来屏蔽不重要服务不可用时对调用方的影响。

设置完后,可以在管理控制台查看:

 

121.jpg image.png
  • 2.2 调用失败后在返回mock值 image.png

mock=fail:return+null 表示消费方对该服务的方法调用在失败后,再返回
null 值,不抛异常。用来容忍不重要服务不稳定时对调用方的影响。

三、服务降级的实现

服务降级是在MockClusterInvoker类实现:

 

121.jpg

四、总结

dubbo提供了一些服务降级措施,当服务提供端某一个非关键的服务出错时候,dubbo可以对消费端的调用进行降级,这样服务消费端就避免了在去调用出错的服务提供端,而是使用自定义的返回值直接在在本地返回。但是相比springcloud的熔断机制,dubbo的容错很不智能,sc里面的熔断机制可以自动熔断和恢复。更详细的可以移步分布式服务系统中服务降级策略探究

用户点评