Redis Cluster集群部署参考这里。
由于在不同的Spring Boot版本中,spring-boot-starter-data-redis默认使用的连接池不同,本文介绍了在使用不同的连接池时的实现方法。
使用Jedis连接池
在Spring Boot 2.0版本之前,spring-boot-starter-data-redis使用的连接池默认为Jedis。
添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
配置文件中添加
# 集群节点,逗号隔开
spring.redis.cluster.nodes = host:port, host:port, host:port, host:port
# Redis连接密码
spring.redis.password = ******
# 连接池最大连接数(使用负值表示没有限制)
spring.redis.pool.max-active = -1
# 连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.pool.max-wait = -1
# 连接池中的最大空闲连接
spring.redis.pool.max-idle = 8
# 连接池中的最小空闲连接
spring.redis.pool.min-idle = 0
# 连接超时时间(毫秒)
spring.redis.timeout = 5000
# 读取数据超时时间
spring.redis.so-timeout = 5000
# 最大尝试次数
spring.redis.max-attempts = 10
新建配置类
@Configuration
@ConditionalOnClass({
JedisCluster.class})
public class RedisConfig {
@Value("${spring.redis.cluster.nodes}")
private String clusterNodes;
@Value("${spring.redis.password}")
private String password;
@Value("${spring.redis.pool.max-wait}")
private long maxWaitMillis;
@Value("${spring.redis.pool.max-idle}")
private int maxIdle;
@Value("${spring.redis.pool.min-idle}")
private int minIdle;