복붙노트

[REDIS] 봄 부트 프레임 워크를 JedisConnectionFactory 기반의 타임 아웃을 구성하는 방법

REDIS

봄 부트 프레임 워크를 JedisConnectionFactory 기반의 타임 아웃을 구성하는 방법

나는 봄 부팅을 사용하고, 임 연결 레디 스에 시간 제한을 구성하는 혼동.

현재 내 구성은 다음과 같습니다

application.yml :

spring.redis.host: myhost
spring.redis.port: 6379
spring.redis.pool.max-idle: 8
spring.redis.pool.min-idle: 0
spring.redis.pool.max-active: 8
spring.redis.pool.max-wait: -1

StringRedisDao.java:

@Autowired
public StringRedisDao(final StringRedisTemplate template, final ObjectMapper mapper) {
    if (template.getConnectionFactory() instanceof JedisConnectionFactory) {
        ((JedisConnectionFactory) template.getConnectionFactory()).getShardInfo().setTimeout(5000);
        ((JedisConnectionFactory) template.getConnectionFactory()).setTimeout(5000);
    }
    this.template = template;
    this.mapper = mapper;
}

나는 패킷을 캡처 와이어 샤크를 사용하고, 나는 위의 코드에서 설정 한 이초 후,하지 오초로 레디 스가 분리 된 것을 발견했다.

이 때문에, 나는 레디 스의 질의 시간이 2 초 이상하다는 요청을 수행 할 수 없습니다.

나는이 어떻게 할 수있는하십시오?

해결법

  1. ==============================

    1.당신이 application.properties에 넣을 수 있습니다 구성 설정도 있습니다 :

    당신이 application.properties에 넣을 수 있습니다 구성 설정도 있습니다 :

    spring.redis.timeout=5000
    
  2. from https://stackoverflow.com/questions/30439378/how-to-configure-timeout-of-jedisconnectionfactory-base-on-spring-boot-framework by cc-by-sa and MIT license