개요
ElasticCahce for Redis로 클러스터를 구성하고 SpringBoot에 연동을 하는 작업을 했다.
연동 확인 하고 api를 돌려봤는데
org.springframework.data.redis.RedisSystemException: Error in execution... 중략
이 나오면서 트랜잭션이 자꾸 실패가 났었다.
원인
로컬에서 Redis Connection Factory에 기본 StandAlone으로 설정이 되어있었다.
@Bean
public LettuceConnectionFactory lettuceConnectionFactory() {
return new LettuceConnectionFactory(host, port); <- LettueceStandAlone으로 팩토리생성됨
}
해결
ClusterConfiguration으로 팩토리를 생성해주면 된다.
@Bean
public LettuceConnectionFactory lettuceConnectionFactory() {
RedisClusterConfiguration clusterConfiguration = new RedisClusterConfiguration();
clusterConfiguration.clusterNode(host, port);
LettuceClientConfiguration clientConfiguration = LettuceClientConfiguration.builder()
.clientOptions(ClientOptions.builder()
.socketOptions(SocketOptions.builder()
.connectTimeout(Duration.ofMillis(5000L)).build())
.build())
.commandTimeout(Duration.ofSeconds(5000L))
.build();
return new LettuceConnectionFactory(clusterConfiguration, clientConfiguration);
}
728x90
'프로그래밍 > ETC' 카테고리의 다른 글
[AWS] NAT Instance 로 PrivateSubnet 과 인터넷 연결하기 (1) | 2024.02.11 |
---|---|
[Elasticache] Serverless Cluster - Redisson Connection 문제 (0) | 2024.01.31 |
[CodeDeploy] 배포 중 나타나는 에러들 해결 (0) | 2024.01.21 |
[기술면접] TCP/UDP 의 차이 (0) | 2024.01.11 |
Mac M1 에서 Jmeter 설치하고 테스트하기 (4) | 2024.01.10 |