1、使用Jedis 连接集群会报 MOVED错误
package com.chen.demo;
import redis.clients.jedis.Jedis;
public class Demo {
public static void main(String[] args) {
String host = "192.168.199.130";
Jedis jedis = new Jedis(host,7002);
String name =null;
name=jedis.get("myname1");
String name2 = null ;
name2=jedis.get("myname2");
String name3=null;
name3=jedis.get("myname3");
System.out.println(name+" "+name2+" "+name3);
jedis.set("key1","value1");
// System.out.println("connection:"+jedis.ping());
}
}
Exception in thread "main" redis.clients.jedis.exceptions.JedisMovedDataException: MOVED 1705 192.168.199.130:7001
2、需要使用JedisCluster连接redis集群
redis版本可能要高一点,目前使用2.8,,同时要引入commons-pool2.jar包
package com.chen.demo;
import java.io.IOException;
import java.util.HashSet;
import java.util.Set;
import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;
public class Demo3 {
public static void main(String[] args) {
Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>();
jedisClusterNodes.add(new HostAndPort("192.168.199.130", 7001));
jedisClusterNodes.add(new HostAndPort("192.168.199.130", 7002));
jedisClusterNodes.add(new HostAndPort("192.168.199.130", 7003));
JedisCluster jc = new JedisCluster(jedisClusterNodes);
System.out.println(jc.get("myname1"));
System.out.println(jc.get("myname2"));
System.out.println(jc.get("myname3"));
try {
jc.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}