直接上配置:
1.redis-config:
<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
<!-- 池中可借的最大數(shù) -->
<!-- <property name="maxActive" value="120" /> -->
<!-- 允許池中空閑的最大連接數(shù) -->
<property name="maxIdle" value="30" />
<!-- 允許池中空閑的最小連接數(shù) -->
<property name="minIdle" value="10" />
<!-- 獲取連接最大等待時(shí)間(毫秒) -->
<!-- <property name="maxWait" value="12000" /> -->
<!-- 當(dāng)maxActive到達(dá)最大數(shù)自点,獲取連接時(shí)的操作 0.拋異常 1.阻塞等待 2.創(chuàng)建新的(maxActive將失效) -->
<!-- <property name="whenExhaustedAction" value="1" /> -->
<!-- 在獲取連接時(shí),是否驗(yàn)證有效性 -->
<property name="testOnBorrow" value="true" />
<!-- 在歸還連接時(shí),是否驗(yàn)證有效性 -->
<property name="testOnReturn" value="true" />
<!-- 當(dāng)連接空閑時(shí)宋渔,是否驗(yàn)證有效性 -->
<property name="testWhileIdle" value="true" />
<!-- 設(shè)定間隔沒(méi)過(guò)多少毫秒進(jìn)行一次后臺(tái)連接清理的行動(dòng) -->
<property name="timeBetweenEvictionRunsMillis" value="1800000" />
<!-- 每次檢查的連接數(shù) -->
<property name="numTestsPerEvictionRun" value="5" />
</bean>
<!-- Redis集群配置 這里使用的是spring-data-redis 包中內(nèi)容 -->
<bean id="redisClusterConfig" class="org.springframework.data.redis.connection.RedisClusterConfiguration">
<property name="maxRedirects" value="${redis.maxRedirects}"></property>
<property name="clusterNodes">
<set>
<bean class="org.springframework.data.redis.connection.RedisNode">
<constructor-arg name="host" value="${redis.host1}"></constructor-arg>
<constructor-arg name="port" value="${redis.port1}"></constructor-arg>
</bean>
<bean class="org.springframework.data.redis.connection.RedisNode">
<constructor-arg name="host" value="${redis.host2}"></constructor-arg>
<constructor-arg name="port" value="${redis.port2}"></constructor-arg>
</bean>
<bean class="org.springframework.data.redis.connection.RedisNode">
<constructor-arg name="host" value="${redis.host3}"></constructor-arg>
<constructor-arg name="port" value="${redis.port3}"></constructor-arg>
</bean>
</set>
</property>
</bean>
<bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<property name="poolConfig" ref="jedisPoolConfig"></property>
<!--<property name="hostName" value="${redis.host}"></property>-->
<!--<property name="port" value="${redis.port}"></property>-->
<constructor-arg name="clusterConfig" ref="redisClusterConfig" />
<property name="timeout" value="${redis.timeout}"></property>
<!--<property name="password" value="password"></property> <property name="database"
value="${redis.database}"></property> -->
</bean>
<!-- redis template definition -->
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate" p:connection-factory-ref="jedisConnectionFactory">
<property name="keySerializer">
<bean class="org.springframework.data.redis.serializer.StringRedisSerializer" />
</property>
</bean>
2.****.properties:
redis.host1=127.0.0.1
redis.port1=6378
redis.host2=127.0.0.1
redis.port2=6377
redis.host3=127.0.0.1
redis.port3=6376
redis.maxRedirects=3
redis.timeout=120000
3.相關(guān)依賴(lài)版本:
<spring-framework.version>4.2.6.RELEASE</spring-framework.version>
<spring-data-redis.version>1.8.1.RELEASE</spring-data-redis.version>
<!-- Common -->
<io.version>2.4</io.version>
<jedis.version>2.9.0</jedis.version>