우주먼지

💡 RedisSystemException

 

발생이유
RedisConfig 내의 Cluster Connect Timeout 시간의 잘못된 설정으로 인한 에러

해결
ResdisProperties내에 세션 타임아웃필드 지정
connectTimeout()내부 로직에 시간값을 가져오는곳에 올바른 시간값 기입 수정
@Component
@Getter @Setter
@ConfigurationProperties("spring.redis")
public class RedisProperties {
    private String host;
    private int port;
    @Getter
    @Value("${jwt.refresh-token-expiration-minutes}")
    private int refreshTokenExpirationMinutes;
    private long sessionTime = 1000000000; // 추가
}
    @Bean
    public RedisConnectionFactory factory() {
        RedisClusterConfiguration configuration = new RedisClusterConfiguration();
        configuration.clusterNode(redisHost, redisPort);

        LettuceClientConfiguration clientConfiguration = LettuceClientConfiguration.builder()
                .clientOptions(ClientOptions.builder()
                        .socketOptions(SocketOptions.builder()
                                .connectTimeout(Duration.ofMillis(redisProperties.getSessionTime())).build())
                        .build())
                .commandTimeout(Duration.ofSeconds(redisProperties.getSessionTime())).build();
        return new LettuceConnectionFactory(configuration, clientConfiguration);
    }

'Error Handling > Java & Spring' 카테고리의 다른 글

💡 OSIV 옵션 & 프록시 객체 초기화  (2) 2023.01.14
❌ RedisConnectionFailurException  (0) 2023.01.10
❌ Circular Dependency  (0) 2023.01.03
❌ DataIntegrityViolation Exception  (0) 2023.01.01
❌ UnexpectedTypeException  (0) 2022.12.09
profile

우주먼지

@o귤o

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

검색 태그