Redis 做集群,使用ShardedJedisPool,然后配置JedisShardInfo 这个的属性,里面需要用到用户名和密码,怎么配置呢?
下面是Spring bean 的配置:
<!-- 配置redis start -->
<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig">
<property name="maxIdle" value="${redis.maxIdle}" />
<property name="testOnBorrow" value="${redis.testOnBorrow}"/>
<property name="testOnReturn" value="${redis.testOnReturn}"/>
</bean>
<bean id = "shardedJedisPool" class="redis.clients.jedis.ShardedJedisPool">
<constructor-arg index="0" ref="poolConfig"/>
<constructor-arg index="1">
<list>
<bean class="redis.clients.jedis.JedisShardInfo">
<constructor-arg
index="0"
value="${redis.host}" />
<constructor-arg
index="1"
value="${redis.port}"
type="int" />
<constructor-arg
index="2"
value="${redis.pass}" />
</bean>
<!-- 多台服务器时使用 -->
<!-- <bean class="redis.clients.jedis.JedisShardInfo">
<constructor-arg
index="0"
value="${redis2.ip}" />
<constructor-arg
index="1"
value="${redis.port}"
type="int" />
</bean> -->
</list>
</constructor-arg>
</bean>
下面是redis属性配置文件:
redis.host=127.0.0.1
redis.port=6379
redis.name=
redis.pass=123456
redis.timeout=3000
redis.maxIdle=300
redis.maxActive=600
redis.maxWait=1000
redis.testOnBorrow=true
redis.testOnReturn=true