Dubbo默认超时时间

Posted ISaiSai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dubbo默认超时时间相关的知识,希望对你有一定的参考价值。

默认超时时间为1秒(1000毫秒)

消费者单个服务的超时时间限制

@DubboReference(version = "1.0.0" ,timeout = 2000)

全局设置

dubbo:
  consumer:
    timeout: 2000

测试代码:消费


    @DubboReference(version = "1.0.0")
    public UserTestService userTestService;

    @Test
    public void testDubboTimeOut() throws Exception 
        System.out.println("Start");
        long startTime = System.currentTimeMillis();
        Result<String> result = userTestService.timeoutTest(10);
        long endTime = System.currentTimeMillis();
        System.out.println(JSON.toJSONString(result));
        System.out.println("End");
        System.out.println( endTime-startTime);

    

测试代码:提供方


@DubboService(version = "1.0.0")
@Service
@Slf4j
public class UserTestServiceImpl implements UserTestService 
    @Override
    public Result<String> timeoutTest(Integer second) 
        for (int i = 0; i < second; i++) 
            try 
                Thread.sleep(100);
             catch (InterruptedException e) 
                e.printStackTrace();
            
        
        return Result.ok("test success");
    

新人创作打卡挑战赛 发博客就能抽奖!定制产品红包拿不停!

以上是关于Dubbo默认超时时间的主要内容,如果未能解决你的问题,请参考以下文章

dubbo超时的深思

Dubbo服务超时

dubbo超时时间设置过大有啥影响

《Spring Cloud 》Eureka服务调用服务超时重试机制

Dubbo的优化 --- 开发时使用

dubbo实战篇:dubbo超时设置