dubbo服务调用网络失败处理

写下带不走的风 发布于 2016/02/20 15:04
阅读 1K+
收藏 0

在使用dubbo的时候,client -> a服务。 在调用的过程中如果网络超时,则会认为处理不成功,实际上a服务只是执行的比较慢而已,最后执行成功了。

这种网络连接失败的问题,client端如何感知到呢?

如果是自己开发的话,可以使用a服务返回回执,这种做法,如果client没有收到回执则认为也是失败。

但,我想知道dubbo有没有自己的处理方法?

加载中
0
__loong
__loong

设置timeout的值 调整为 比业务执行时间大一点。

或者关闭retry

写下带不走的风
写下带不走的风
项目有严格规范,不允许设置太长,只允许程序优化。
0
十二缸帕萨特
十二缸帕萨特
时间太长的话,建议用异步调用,然后用消息通知结果,这样就不用等待
写下带不走的风
写下带不走的风
有想过,但是有一个问题,业务依赖返回结果的,如果结果是失败那么还要在client端撤销之前的业务。
0
傲视苍穹110
傲视苍穹110

可以使用dubbo的快速失败,当调用超时的时候直接返回失败,不会重复调用;

写下带不走的风
写下带不走的风
实际上没法解决,我们最终选择了日志+人工补救措施
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部