zoukankan      html  css  js  c++  java
  • 关于dubbo服务产生异常之:Caused by: com.alibaba.dubbo.remoting.TimeoutException: Waiting server-side response timeout by scan timer.

    最近在做一个项目,需要生成9000个号码,为了方便系统分离合并,采用dubbo实现,在本地测试生成时什么问题都没有,顺顺利利的实现生成并显示状态,可是每次调用dubbo服务时就会产生异常,每当想要生成200个号码的时候,它会生成400个或者600,很显然它是执行了三次,也就是服务调了三次,看后台总是看到一个tried 3 times……这也正是产生三倍数量的原因,后来仔细看了后台异常说的是……timeout……,那么自然想到是服务超时,个人觉得是在调用一次服务时,后台需要执行的时间太长,超出了服务的响应超时时间(response timeout),所以它会再次尝试调用服务,可能是dubbo服务的设置,最多尝试三次,所以就会产生调用三次服务,产生三倍号码的结果,那么这样就有方向了,修改dubbo服务的超时时间timeout,网上找设置dubbo timeout的方法,http://wenku.baidu.com/view/5c6854287375a417866f8f61,这里边仔细介绍了设置超时时间的方法,还进行了详细分析,开始设置的timeout=10000,少量的可以正常完成,可是数大点就不行了,后来有同事说可以设置timeout=0就没有超时时间,但是测试过,不可以,因为默认的是500,你设置了0,就是不管怎样都是超时了,这个和其他框架的配置不太一样,后来在服务提供端设置timeout=1200000,ok!完胜!虽然有点大,但是也没影响。

      详细设置和说明可以查看百度文库的资料,dubbo官方配置指南.doc,

    <dubbo:service interface="com.XXXX.XXXXX.CardService" ref="cardService" timeout="1200000"/>
  • 相关阅读:
    九度-题目1197:奇偶校验
    九度-题目1073:杨辉三角形
    九度-题目1072:有多少不同的面值组合?
    同步异步,阻塞非阻塞
    注解方式配置bean
    监听器
    自定义系统初始化器
    构建流
    数值流
    流的使用
  • 原文地址:https://www.cnblogs.com/mecca/p/3824191.html
Copyright © 2011-2022 走看看