美文网首页
spring整合redis集群

spring整合redis集群

作者: ThorOde | 来源:发表于2018-02-04 23:00 被阅读43次

直接上配置:
1.redis-config:

<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
        <!-- 池中可借的最大数 -->
        <!-- <property name="maxActive" value="120" /> -->
        <!-- 允许池中空闲的最大连接数 -->
        <property name="maxIdle" value="30" />
        <!-- 允许池中空闲的最小连接数 -->
        <property name="minIdle" value="10" />
        <!-- 获取连接最大等待时间(毫秒) -->
        <!-- <property name="maxWait" value="12000" /> -->
        <!-- 当maxActive到达最大数,获取连接时的操作 0.抛异常 1.阻塞等待 2.创建新的(maxActive将失效) -->
        <!-- <property name="whenExhaustedAction" value="1" /> -->
        <!-- 在获取连接时,是否验证有效性 -->
        <property name="testOnBorrow" value="true" />
        <!-- 在归还连接时,是否验证有效性 -->
        <property name="testOnReturn" value="true" />
        <!-- 当连接空闲时,是否验证有效性 -->
        <property name="testWhileIdle" value="true" />
        <!-- 设定间隔没过多少毫秒进行一次后台连接清理的行动 -->
        <property name="timeBetweenEvictionRunsMillis" value="1800000" />
        <!-- 每次检查的连接数 -->
        <property name="numTestsPerEvictionRun" value="5" />
    </bean>
    <!-- Redis集群配置     这里使用的是spring-data-redis  包中内容 -->
    <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.相关依赖版本:

        <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>
       

相关文章

网友评论

      本文标题:spring整合redis集群

      本文链接:https://www.haomeiwen.com/subject/hdbvzxtx.html