ribbon基于接口配置超时_聊聊ribbon的超时时间设置

本文详细探讨了Spring Cloud Netflix Ribbon的超时时间配置,包括ReadTimeout和ConnectTimeout的默认值及其在不同客户端(如Apache HttpClient、OkHttp)中的设置方式。Ribbon通过IClientConfig加载配置,并在请求执行时应用超时设置。当配置缺失时,将使用默认值。
摘要由CSDN通过智能技术生成

本文主要研究一下ribbon的超时时间设置

配置

实例

ribbon:

ReadTimeout: 10000

ConnectTimeout: 10000

MaxAutoRetries: 0

MaxAutoRetriesNextServer: 1

eureka:

enabled: true

RibbonClientConfiguration

spring-cloud-netflix-ribbon-2.0.0.RELEASE-sources.jar!/org/springframework/cloud/netflix/ribbon/RibbonClientConfiguration.java

@SuppressWarnings("deprecation")

@Configuration

@EnableConfigurationProperties

//Order is important here, last should be the default, first should be optional

// see https://github.com/spring-cloud/spring-cloud-netflix/issues/2086#issuecomment-316281653

@Import({HttpClientConfiguration.class, OkHttpRibbonConfiguration.class, RestClientRibbonConfiguration.class, HttpClientRibbonConfiguration.class})

public class RibbonClientConfiguration {

public static final int DEFAULT_CONNECT_TIMEOUT = 1000;

public static final int DEFAULT_READ_TIMEOUT = 1000;

@RibbonClientName

private String name = "client";

// TODO: maybe re-instate autowired load balancers: identified by name they could be

// associated with ribbon clients

@Autowired

private PropertiesFactory propertiesFactory;

@Bean

@ConditionalOnMissingBean

public IClientConfig ribbonClientConfig() {

DefaultClientConfigImpl config = new DefaultClientConfigImpl();

config.loadProperties(this.name);

config.set(CommonClientConfigKey.ConnectTimeout, DEFAULT_CONNECT_TIMEOUT);

config.set(CommonClientConfigKey.ReadTimeout, DEFAULT_READ_TIMEOUT);

return config;

}

//......

}

这里设置默认的超时值,都是10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值