pom:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.4.2</version> </dependency>
配置:
/** * redisson auto configuration * * @author linux_china */ @SuppressWarnings("SpringJavaAutowiringInspection") @Configuration @AutoConfigureAfter(RedisAutoConfiguration.class) public class RedissonAutoConfiguration { @Autowired private RedisProperties redisProperties; @Bean public RedissonClient redissonClient() { Config config = new Config(); //sentinel if (redisProperties.getSentinel() != null) { SentinelServersConfig sentinelServersConfig = config.useSentinelServers(); sentinelServersConfig.setMasterName(redisProperties.getSentinel().getMaster()); List<String> nodeList = redisProperties.getSentinel().getNodes(); String [] nodes = new String[nodeList.size()]; sentinelServersConfig.addSentinelAddress(redisProperties.getSentinel().getNodes().toArray(nodes)); sentinelServersConfig.setDatabase(redisProperties.getDatabase()); if (redisProperties.getPassword() != null) { sentinelServersConfig.setPassword(redisProperties.getPassword()); } } else { //single server SingleServerConfig singleServerConfig = config.useSingleServer(); singleServerConfig.setAddress(redisProperties.getHost() + ":" + redisProperties.getPort()); singleServerConfig.setDatabase(redisProperties.getDatabase()); if (redisProperties.getPassword() != null) { singleServerConfig.setPassword(redisProperties.getPassword()); } } return Redisson.create(config); } }
yml配置:
redis: password: xxxxx sentinel: master: rds-poto nodes: - rds-xx1.net:6380 - rds-xx2.net:6380 - rds-xx3.net:6380
redis: database: 4 jedis: pool: max-active: 8 max-idle: 8 min-idle: 0