springboot 集成redis哨兵主從的實現
一、環境
spring boot 2.3.12.RELEASE
JDK 1.8
IntelliJ IDEA開發工具
Redis哨兵主從搭建
二、POM文件
pom文件其他忽略,隻展示和redis有關系統的依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- 重點:redis依賴 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <!-- 對象池框架,redis依賴 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-pool2</artifactId> </dependency>
三、application.yml配置
關於springboot的配置忽略
spring 約定大於配置,對於默認的就可以不用再配置文件中體現
spring: redis: # redis庫 database: 1 # redis節點的密碼 password: jwssw # 集群配置 sentinel: # 集群哨兵節點配置,多個節點之間用英文逗號分割 nodes: 127.0.0.1:26379,127.0.0.1:26380,127.0.0.1:26381 # 主節點名稱 master: mymaster # 密碼 password: jwssw
註意如果redis的sentinel配置文件增加瞭requirepass(訪問秘鑰),其sentinel節點下必須加上【password】,否則不需要添加。
四、reidsTemplate配置
該配置文件可以直接加載啟動類中,因為啟動類也是springboot的一種配置類
/** * 方法描述: 初始化redis連接 * * @param factory redis連接工廠 * @return {@link RedisTemplate} */ @Bean public RedisTemplate redisTemplate(RedisConnectionFactory factory) { // 新建redisTemplate對象 RedisTemplate<String, Object> template = new RedisTemplate<>(); // 設置工廠 template.setConnectionFactory(factory); // 鍵值類型 template.setKeySerializer(new StringRedisSerializer()); template.setValueSerializer(new StringRedisSerializer()); // 返回redisTemplate對象 return template; }
五、單元測試(JUnit4)
@RunWith(SpringRunner.class) @SpringBootTest public class RedisTest { // 註入redisTemplate對象 @Autowired RedisTemplate<String, Object> redisTemplate; @Test public void setOrGetTest() { // redis鍵值 String redisKey = "name"; // 向redis存放內容 redisTemplate.opsForValue().set(redisKey, "張三" + new Random().nextInt()); // 獲取redis中的內容並打印 System.out.println(redisTemplate.opsForValue().get(redisKey)); } }
到此這篇關於springboot 集成redis哨兵主從的實現的文章就介紹到這瞭,更多相關springboot redis哨兵主從內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- springboot2.5.0和redis整合配置詳解
- SpringBoot+Redis哨兵模式的實現
- SpringBoot整合SpringDataRedis的示例代碼
- docker搭建redis哨兵集群並且整合springboot的實現
- springboot使用redis的詳細步驟