Backend/Spring+Boot

SpringBoot Redis Cluster Lettuce 설정

findmypiece 2021. 5. 4. 14:52
728x90

공식 홈페이지에 Redis Cluster 기준 client 설정이 있긴한데 Jedis 기반이라 Lettuce 설정을 기록해둔다.

 

1. application.yml 설정

참고로 구조는 꼭 아래와 같이 할필요는 없다. 그냥 본인이 편한대로 하면 된다.

config 클래스에서 그대로 불러오기만 하면 된다.

spring:
  redis:
    cluster:
      nodes: localhost:6370,localhost:6371,localhost:6372

 

2. Config 설정

@Configuration
//@EnableRedisRepositories	//없어도 잘 돌아가는듯? 스프링부트 자동설정에 포함되어 있음.
public class RedisConfig {

//	@Value("${spring.redis.host}")
//	private String redisHost;

//	@Value("${spring.redis.port}")
//	private int redisPort;

	@Value("${spring.redis.cluster.nodes}")
	private List<String> clusterNodes;

	@Bean
	public RedisConnectionFactory redisConnectionFactory() {
    //		return new LettuceConnectionFactory(redisHost, redisPort);
		RedisClusterConfiguration redisClusterConfiguration = new RedisClusterConfiguration(clusterNodes);
		return new LettuceConnectionFactory(redisClusterConfiguration);
	}

	@Bean
	public StringRedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory) {
		return new StringRedisTemplate(redisConnectionFactory);
	}

}
728x90