Back-End
Spring Boot Redis Connection Pool + Cluster 설정
@deveely
2020. 7. 21. 06:52
반응형
Spring Boot에서 Redis Cluster에 접속하는 방법을 정리한다.
Spring Boot 설정
spring: redis: cluster: nodes: 1.1.1.1:1234 1.1.1.2:1234 1.1.1.3:1234
@Configuration public class RedisConfiguration { @Value("${spring.redis.cluster.nodes}") private String[] clusterNodes; /** * Jedis Connection Pool */ @Bean public JedisPoolConfig jedisPoolConfig() { return new JedisPoolConfig(); } /** * Redis Connection Factory (커넥션풀링 + 클러스터링) */ @Bean public RedisConnectionFactory redisConnectionFactory(JedisPoolConfig jedisPoolConfig) { RedisClusterConfiguration redisClusterConfigurations = new RedisClusterConfiguration(clusterNodes); return new JedisConnectionFactory(redisClusterConfigurations, jedisPoolConfig); } /** * 어플리케이션에서 사용할 RedisTemplate 설정 */ @Bean public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) { RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(redisConnectionFactory); redisTemplate.setDefaultSerializer(new StringRedisSerializer()); return redisTemplate; } public StringRedisTemplate stringRedisTemplate(RedisConnectionFactory redisConnectionFactory) { return new StringRedisTemplate(redisConnectionFactory); } }
이 후 사용은 보통 RedisTemplate 혹은 Repository 사용하듯이 사용하면 된다.
참고 (Redis 클러스터 모드로 접속)
-c 옵션으로 클러스터 모드로 접속
redis-cli -c -h 1.2.3.4 -p 1234
반응형