dubbo集群服务下一台服务挂了对服务调用的影响

一、问题描述:项目中2台dubbo服务给移动端提供查询接口,移动端反应说查询时而很快(秒刷),时而很慢(4-5秒)。

二、问题分析:

  1、问题猜想:网络不稳定原因导致,但是切换公司wifi和手机4G,问题依旧存在。说明问题不是网络原因导致

  2、因为服务提供者中有记录服务响应时间日志,打开2台服务提供者的日志,发现有一台不会打印最新日志,而所有的服务调用都在另一台,检查发现一台dubbo服务已经挂了(mark可能是问题原因)。

     继续分析正常使用的dubbo服务的响应日志发现。。响应时间都在200ms左右,从这可以看出服务响应也是没问题的。那是什么原因导致时快时慢的呢。

     既然正常服务调用没问题,那一定是集群环境中调用出问题了,想到一开始发现的一台dubbo服务已经挂了(zookeeper注册中心依然有这台服务的注册信息),而在集群负载均衡时,Dubbo缺省为random随机调用,当请求到挂了的provider时,会先执行重试,

     然后再选择集群中正常的provider提供的服务,这样经过重试再选择provider必然会耗时

     验证结果也印证了以上猜测:当访问快的时候,日志很快打印,而在访问慢的时候,后台日志也间隔几秒才打印,其中耗时都在重试和再选择服务上。

三、问题解决:把挂了的dubbo服务启动起来,问题没有再出现

 

  

转载于:https://www.cnblogs.com/shuaiqing/p/9480679.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值