SpringBoot連接Redis集群教程
1. 依賴
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>2. 修改配置文件
server.port=100 #redis集群節(jié)點(diǎn)信息 spring.redis.cluster.nodes=192.168.25.132:6379,192.168.25.132:6380,192.168.25.133:6379,192.168.25.133:6380,192.168.25.134:6379,192.168.25.134:6380 #redis連接密碼(默認(rèn)空) spring.redis.password= #redis連接池最大連接數(shù)(使用負(fù)值表示沒有限制) spring.redis.jedis.pool.max-active=20 #redis連接池最大阻塞等待時間(使用負(fù)值表示沒有限制) spring.redis.jedis.pool.max-wait=-1 #redis連接池最大空閑連接 spring.redis.jedis.pool.max-idle=200 #redis連接池最小空閑連接 spring.redis.jedis.pool.min-idle=20 #redis連接超時時間(毫秒) spring.redis.timeout=10000
3. 創(chuàng)建RedisClusterConfig
@Configuration
public class RedisClusterConfig {
@Value("${spring.redis.cluster.nodes}")
private String clusterNodes;
@Value("${spring.redis.database}")
private int database;
@Value("${spring.redis.timeout}")
private int timeout;
@Value("${spring.redis.jedis.pool.max-idle}")
private int maxIdle;
@Value("${spring.redis.jedis.pool.min-idle}")
private int minIdle;
@Value("${spring.redis.jedis.pool.max-active}")
private int maxActive;
@Value("${spring.redis.jedis.pool.max-wait}")
private long maxWait;
@Bean
public JedisCluster getJedisCluster() {
return new JedisCluster(getNodes(), timeout, poolConfig());
}
private JedisPoolConfig poolConfig() {
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxIdle(maxIdle);
config.setMinIdle(minIdle);
config.setMaxTotal(maxActive);
config.setMaxWaitMillis(maxWait);
return config;
}
private Set<HostAndPort> getNodes() {
String[] cNodes = clusterNodes.split(",");
Set<HostAndPort> nodes = new HashSet<HostAndPort>();
// 分割出集群節(jié)點(diǎn)
String[] hp;
for (String node : cNodes) {
hp = node.split(":");
nodes.add(new HostAndPort(hp[0], Integer.parseInt(hp[1])));
}
return nodes;
}
}4. 測試
@RestController
@RequestMapping("/redis/cluster")
public class RedisClusterController {
@Autowired
private JedisCluster jedisCluster;
@GetMapping("/set")
public void set(@RequestParam("key") String key, @RequestParam("value") String value){
jedisCluster.set(key, value);
}
}這邊就不演示了,分別訪問以下2個地址,能得到結(jié)果說明正常:
http://localhost:100/redis/cluster/set?key=name&value=zhangsan
http://localhost:100/redis/cluster/get?key=name
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
- Springboot如何配置多個Redis數(shù)據(jù)源(非集群)
- Redis結(jié)合 Docker 搭建集群并整合SpringBoot的詳細(xì)過程
- 解決Springboot集成Redis集群配置公網(wǎng)IP連接報私網(wǎng)IP連接失敗問題
- springboot集成redis哨兵集群的實現(xiàn)示例
- docker搭建redis哨兵集群并且整合springboot的實現(xiàn)
- Redis6搭建集群并在SpringBoot中使用RedisTemplate的實現(xiàn)
- 關(guān)于Springboot2.x集成lettuce連接redis集群報超時異常Command timed out after 6 second(s)
- springboot基于Redis發(fā)布訂閱集群下WebSocket的解決方案
- springboot整合redis集群過程解析
相關(guān)文章
Java算法實戰(zhàn)之排一億個隨機(jī)數(shù)
我們在生活中經(jīng)常遇見一些這樣的需求,隨機(jī)點(diǎn)名、公司年會抽獎、微信拼手氣紅包等,還有一些游戲比如打地鼠小游戲、俄羅斯方塊等,這些場景中都會用到一種算法:隨機(jī),這篇文章主要給大家介紹了關(guān)于Java算法實戰(zhàn)之排一億個隨機(jī)數(shù)的相關(guān)資料,需要的朋友可以參考下2021-11-11
SpringBoot多環(huán)境配置數(shù)據(jù)讀取方式
SpringBoot通過環(huán)境隔離機(jī)制,支持properties/yaml/yml多格式配置,結(jié)合@Value、Environment和@ConfigurationProperties實現(xiàn)靈活配置讀取,下面給大家介紹SpringBoot之多環(huán)境配置全解析,感興趣的朋友一起看看吧2025-07-07
java使用正則表達(dá)為數(shù)字添加千位符的簡單方法
這篇文章主要介紹了java使用正則表達(dá)為數(shù)字添加千位符的簡單方法,需要的朋友可以參考下2014-04-04
Spring Boot打開URL出現(xiàn)signin問題的解決
這篇文章主要介紹了Spring Boot打開URL出現(xiàn)signin問題的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12
SpringBoot實現(xiàn)接口數(shù)據(jù)的加解密功能
這篇文章主要介紹了SpringBoot實現(xiàn)接口數(shù)據(jù)的加解密功能,對接口的加密解密操作主要有兩種實現(xiàn)方式,文中給大家詳細(xì)介紹,需要的朋友可以參考下2019-10-10
Java后端調(diào)用微信支付和支付寶支付的詳細(xì)步驟
這篇文章主要介紹了Java后端如何調(diào)用微信支付和支付寶支付,涵蓋了基本概念、配置步驟、代碼示例以及注意事項,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-04-04

