一、java操作redis集群
Java操作集群:
Set<HostAndPort> jedisClusterNodes=new HashSet<HostAndPort>();
jedisClusterNodes.add(new HostAndPort("192.168.1.124",7001));
jedisClusterNodes.add(new HostAndPort("192.168.1.124",7002));
jedisClusterNodes.add(new HostAndPort("192.168.1.124",7003));
jedisClusterNodes.add(new HostAndPort("192.168.1.124",7004));
jedisClusterNodes.add(new HostAndPort("192.168.1.124",7005));
jedisClusterNodes.add(new HostAndPort("192.168.1.124",7006));
JedisPoolConfig jedisPoolConfig=new JedisPoolConfig();
jedisPoolConfig.setMaxTotal(100);
jedisPoolConfig.setMaxIdle(20);
jedisPoolConfig.setMaxWaitMillis(-1);
jedisPoolConfig.setTestOnBorrow(true);
//节点,超时时间,最多重定向次数,链接池
JedisCluster jedisCluster=new JedisCluster(jedisClusterNodes,6000,1000,jedisPoolConfig);
System.out.println(jedisCluster.set("jedisClustername", "jedisClusterwlan"));
System.out.println(jedisCluster.set("jedisClustersex", "男"));
System.out.println(jedisCluster.get("jedisClustername"));
jedisCluster.close();
二、spring整合redis集群
1、redis.xml配置文件中
//redis线程池的配置
<bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
<property name="maxTotal" value="10"/>
<property name="maxIdle" value="8"/>
<property name="minIdle" value="0"/>
<property name="maxWaitMillis" value="5000"/>
<property name="minEvictableIdleTimeMillis" value="300000"/>
<property name="softMinEvictableIdleTimeMillis" value="-1"/>
<property name="numTestsPerEvictionRun" value="3"/>
</bean>
//redis集群的配置
<bean id="redisClusterConfig" class="org.springframework.data.redis.connection.RedisClusterConfiguration">
<constructor-arg>
<list>
<value>192.168.90.124:7001</value>
<value>192.168.90.124:7002</value>
<value>192.168.90.124:7003</value>
<value>192.168.90.124:7004</value>
<value>192.168.90.124:7005</value>
<value>192.168.90.124:7006</value>
</list>
</constructor-arg>
<property name="maxRedirects" value="5"/>
</bean>
//redis集群的连接工厂
<bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<constructor-arg index="0">
<ref bean="redisClusterConfig"/>
</constructor-arg>
<constructor-arg index="1">
<ref bean="jedisPoolConfig"/>
</constructor-arg>
<property name="database" value="0"/>
</bean>
或者单个redis的连接工厂配置
<bean id="jedisConnectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
<property name="poolConfig" ref="jedisPoolConfig" />
<property name="hostName" value="192.168.90.124" />
<property name="port" value="6379" />
<property name="timeout" value="15000" />
<property name="usePool" value="true" />
</bean>
//redis操作模板
<bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate">
<property name="connectionFactory" ref="jedisConnectionFactory"/>
</bean>
2、项目中操作
原文:http://wlan2014.blog.51cto.com/5553663/1898695