一、前言
dubbo提供了一些服务降级措施,当服务提供端某一个非关键的服务出错时候,dubbo可以对消费端的调用进行降级,这样服务消费端就避免了在去调用出错的服务提供端,而是使用自定义的返回值直接在在本地返回。
二、如何使用服务降级
直接返回mock值
mock=force:return+null 表示消费方对该服务的方法调用都直接返回 null 值,不发起远程调用。用来屏蔽不重要服务不可用时对调用方的影响。设置完后,可以在管理控制台查看:
- 2.2 调用失败后在返回mock值
mock=fail:return+null 表示消费方对该服务的方法调用在失败后,再返回
null 值,不抛异常。用来容忍不重要服务不稳定时对调用方的影响。
三、服务降级的实现
服务降级是在MockClusterInvoker类实现:
四、总结
dubbo提供了一些服务降级措施,当服务提供端某一个非关键的服务出错时候,dubbo可以对消费端的调用进行降级,这样服务消费端就避免了在去调用出错的服务提供端,而是使用自定义的返回值直接在在本地返回。但是相比springcloud的熔断机制,dubbo的容错很不智能,sc里面的熔断机制可以自动熔断和恢复,感兴趣的大家可以去看看。另外深入浅出dubbo视频课程已经更新完毕,单击 阅读原文 可进入观看
本文分享自微信公众号 - 技术原始积累(gh_805ebfd2deb0)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。