在使用Jedis进行redis集群操作的时候,出现报错connection refused 和Could not get a resource from the pool代码如下:

@Test
public void testRedis(){
final String redisURL = "192.168.3.3";
final String auth = "pass";
final int port7001 = 5001;
final int port7002 = 5002;
final int port7003 = 5003;
final int port7004 = 5004;
final int port7005 = 5005;
final int port7006 = 5006;

final int MAX_IDLE = 200;
final int MAX_TOTAL = 1024;
final int CONN_TIME_OUT = 1000;//链接server超时
final int SO_TIME_OUT = 1000;//等待response超时
final int MAX_ATTEMPTS = 1;//尝试重新链接次数

GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig();
poolConfig.setMaxTotal(MAX_TOTAL);
poolConfig.setMaxIdle(MAX_IDLE);

HostAndPort hostAndPort1 = new HostAndPort(redisURL,port7001);
HostAndPort hostAndPort2 = new HostAndPort(redisURL,port7002);
HostAndPort hostAndPort3 = new HostAndPort(redisURL,port7003);
HostAndPort hostAndPort4 = new HostAndPort(redisURL,port7004);
HostAndPort hostAndPort5 = new HostAndPort(redisURL,port7005);
HostAndPort hostAndPort6 = new HostAndPort(redisURL,port7006);

Set<HostAndPort> hostAndPortSet = new HashSet<>(6);
hostAndPortSet.add(hostAndPort1);
hostAndPortSet.add(hostAndPort2);
hostAndPortSet.add(hostAndPort3);
hostAndPortSet.add(hostAndPort4);
hostAndPortSet.add(hostAndPort5);
hostAndPortSet.add(hostAndPort6);

// public JedisCluster(Set<HostAndPort> jedisClusterNode, int connectionTimeout,
// int soTimeout, int maxAttempts, String password, GenericObjectPoolConfig poolConfig)
JedisCluster jedisCluster = new JedisCluster(hostAndPortSet,CONN_TIME_OUT,SO_TIME_OUT,MAX_ATTEMPTS,auth,poolConfig);

jedisCluster.set("a", "1o");
System.out.println(jedisCluster.get("a"));

//
// public JedisPool(GenericObjectPoolConfig poolConfig, String host, int port, int timeout, String password) {
// this(poolConfig, host, port, timeout, password, 0, (String)null);
// }

}

经过查找资料,最终猜测问题出在redis-cluster/redis**/nodes_**.conf,所以对此文件进行了修改

注:修改时请先关闭集群
修改之前的文件内容如下:

30098db4933f13b02ef2a30a5070617f0ae58fd4 127.0.0.1:5006@15006 slave 0ee3bde15b2caf32df19ef85d874c228be8d9342 0 1513932380250 6 connected
692301fa80af9870bb258c34b553590fbced72ad 127.0.0.1:5001@15001 master - 0 1513932380000 1 connected 0-5460
164295b1736fb5fc244abf0a2e57774d938a7262 127.0.0.1:5002@15002 master - 0 1513932379545 2 connected 5461-10922
0ee3bde15b2caf32df19ef85d874c228be8d9342 127.0.0.1:5003@15003 myself,master - 0 1513932380000 3 connected 10923-16383
657967366913fff237e091320761ea7ef9544893 127.0.0.1:5004@15004 slave 692301fa80af9870bb258c34b553590fbced72ad 0 1513932380049 4 connected
13c976fada6a8537826b2585a5dabad6fd2a4ece 127.0.0.1:5005@15005 slave 164295b1736fb5fc244abf0a2e57774d938a7262 0 1513932380553 5 connected

修改后的内容如下:

30098db4933f13b02ef2a30a5070617f0ae58fd4 192.168.3.3:5006@15006 slave 0ee3bde15b2caf32df19ef85d874c228be8d9342 0 1513932380250 6 connected
692301fa80af9870bb258c34b553590fbced72ad 192.168.3.3:5001@15001 master - 0 1513932380000 1 connected 0-5460
164295b1736fb5fc244abf0a2e57774d938a7262 192.168.3.3:5002@15002 master - 0 1513932379545 2 connected 5461-10922
0ee3bde15b2caf32df19ef85d874c228be8d9342 192.168.3.3:5003@15003 myself,master - 0 1513932380000 3 connected 10923-16383
657967366913fff237e091320761ea7ef9544893 192.168.3.3:5004@15004 slave 692301fa80af9870bb258c34b553590fbced72ad 0 1513932380049 4 connected
13c976fada6a8537826b2585a5dabad6fd2a4ece 192.168.3.3:5005@15005 slave 164295b1736fb5fc244abf0a2e57774d938a7262 0 1513932380553 5 connected

资料来源:https://www.cnblogs.com/mengjinluohua/p/6193962.html
PS:此博主最终的解决方法是重做集群,不过我并没有重做集群,只是修改了一下所有节点的nodes**_conf文件并重启,也可以解决问题,目前来看并没有什么不妥,如果有问题再回来修改 ×——×

Java连接redis集群报错,connection refused 和Could not get a resource from the pool相关推荐

  1. 连接redis集群报错: no reachable node in cluster

    今天在连接redis集群时遇到个问题,试了很多方案也没解决. 就是连接redis集群老是报错: no reachable node in cluster. 后来改了一些参数,就可以调通了. 废话不多说 ...

  2. 【问题解决】关于 C++ 连接 Redis 集群报错 MOVED

    过程的艰辛我就不说了.注意看:报错的应答消息是这样的:MOVED 7365 192.168.190.133:6382 此刻小脑袋瓜灵光的各位已经转过弯来了吧. 没转过弯也正常,你应该是缺少这一篇:关于 ...

  3. 代码操作redis集群报错:(error) MOVED 解决方法

    记录一下今天搭建完本地redis集群以后,使用C++代码测试redis集群搭建是否成功. 在初始化.链接等一系列成功后,我开开心心进行写操作: 这时候报错: Run 382 Redis Set Err ...

  4. redis集群报错:(error) MOVED 解决方法

    在使用 redis-cli 连接 redis 集群,进行数据操作时,有报错 ./redis-cli -h 192.24.54.1 -p 6379 -a '123456' 192.24.54.1:637 ...

  5. 报错:使用java api连接redis集群时报错 READONLY You can't write against a read only slave....

    报错: READONLY You can't write against a read only slave. 报错原因: 因为连接的是从节点,从节点只有读的权限,没有写的权限 解决方案: 进入red ...

  6. 报错:使用java api连接redis集群时报错 READONLY You can't write against a read only slave.

    报错: READONLY You can't write against a read only slave. 报错原因: 因为连接的是从节点,从节点只有读的权限,没有写的权限 解决方案: 进入red ...

  7. java连接redis集群

     http://m.blog.csdn.net/koushr/article/details/50956870 连接redis数据库(非集群模式) public static void main( ...

  8. redis集群报错,(error) MOVED 15495 127.0.0.1:7003

    节点会对命令请求进行分析和key的slot计算,并且会查找这个命令所要处理的键所在的槽.如果要查找的哈希槽正好就由接收到命令的节点负责处理, 那么节点就直接执行这个命令. 另一方面, 如果所查找的槽不 ...

  9. redis集群报错:(error) MOVED 11469 192.168.163.249:7002

    应该是你没有启动集群模式(即缺少了那个"-c"): redis-cli -c -h yourhost -p yourpost

  10. 用docker安装redis集群报错“Bad directive or wrong number of arguments\n“,“stream“:“stderr“”

    redis.conf配置文见多了红框里面的几行参数,删除这几行后正常启动.

最新文章

  1. android jar 电子书下载,【Android】Gradle project sync jar包长时间下载不下来的解决办法...
  2. mysql同步出现错误
  3. 清华大学 唐杰 计算机学院 怎么样,我国首位原创虚拟学生,后期希望“她”能够像人一样进行创新...
  4. html 动态创建表格,jquery动态创建表格
  5. TCP网络编程的基本流程
  6. mysql解压版安装配置
  7. .net mvc ajax重定向,如何在MVC3 JQuery的Ajax调用重定向到新的页面(连同模型)(How to redirec...
  8. TortoiseSVN 命令 (命令行执行工具)
  9. 线性变换与矩阵的一一映射
  10. 一般的病毒通过注册表自启动的方式不断完善中。。。。
  11. matlab 韦布尔拟合,MATLAB数据拟合工具在数学建模中的简单应用
  12. L1-061 新胖子公式 (10 分)C语言
  13. 使用分治法解最大连续子序列和问题
  14. PS 制作毛玻璃效果
  15. ArcMap导入Excel数据显示没有注册类
  16. IDEA中配置Vue启动Configurations
  17. 测试人生 | 00后0经验应届毕业生拿下2线城市15W offer,好励志~
  18. 插件.ignore的使用
  19. 慢性呼吸疾病的分类、诊断、预警模型的建立(一)
  20. 解决 Chrome浏览器网页上出现光标,无法通过键盘方向键实现页面滚动的问题

热门文章

  1. 经典图像质量评价指标原理
  2. oracle run {,Oracle runInstaller 安装不显示 OUI 处理 说明
  3. Ubuntu vsftp搭建和C# Winform FTP操作
  4. JMeter Ramp-up 说明
  5. 一台计算机有几块网卡,如何在计算机(服务器)中安装多块网卡
  6. allegro里面由于shape out of date
  7. 三款EDA工具,AD、PADS与Allegro的简单介绍
  8. 自我时间管理与时间意识
  9. 心态-《自我成长的力量》书中的精髓:自我成长的过程需要我们不断觉察自己、改变自己、活出自己,从而成长为最好的自己。
  10. matlab aic怎么用,AIC信息准则的编程