本篇文章适合redis集群操作。
首先介绍下redis哨兵模式:
大致是什么意思呢。比如说现在有三台redis服务器,我们给它分配三个哨兵,当多数哨兵发现leader挂了的时候,他们会让小弟上马作为新的leader,这也是多哨兵模式,项目开发中普遍使用这种。就是一个实现高可用,不易宕机。
参数详解:
masterName:是redis名字。
set:哨兵模式服务器与端口,“xxx.xx.xx.xx:26379,xxx.xx.xx.xx:26379,xxx.xx.xx.xx:26379”,根据逗号隔开后的set。(必须要是java.util.HashMap)
poolConfig:这个是连接池中的配置,val poolConfig=new JedisPoolConfig(),可有如下配置:
poolConfig.setMaxTotal(250)
poolConfig.setMaxIdle(32)
poolConfig.setTestOnBorrow(false)
poolConfig.setTestOnReturn(false)
poolConfig.setTestWhileIdle(false)
poolConfig.setMinEvictableIdleTimeMillis(60000)
poolConfig.setTimeBetweenEvictionRunsMillis(30000)
poolConfig.setNumTestsPerEvictionRun(-1)
timeout:超时时长
auth:密码
dbNum:访问的是几库
获取redis客户端:new JedisSentinelPool(masterName,set,poolConfig,timeout,auth,dbNum)
其中参数配置可根据实际需求自由搭配。
依赖导入:
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>