JedisConnectionException:java.net.SocketTimeoutException:连接超时

5

我正在使用Jedis作为简单的键值数据存储...我的代码如下

private static final String HOST = "50.30.35.9"; 
private static final int PORT = 2863;    
Jedis jedis = new Jedis(HOST, PORT); 

  try { 
      jedis.set("foo", "bar"); 
      jedis.get("foo"); 
  } catch (Exception e) { 
      System.err.println("Unable to connect to Redis"); 
      e.printStackTrace(); 
  } 

当我使用jedis客户端测试redis服务器时,出现了以下异常。

 redis.clients.jedis.exceptions.JedisConnectionException: 
 java.net.SocketTimeoutException: connect timed out 
         at redis.clients.jedis.Connection.connect(Connection.java:124) 
         at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:  54) 
         at redis.clients.jedis.Connection.sendCommand(Connection.java:  77) 
         at redis.clients.jedis.BinaryClient.set(BinaryClient.java:71) 
         at redis.clients.jedis.Client.set(Client.java:21) 
         at redis.clients.jedis.Jedis.set(Jedis.java:48)

有人能帮忙吗?


你能否执行以下操作:telnet 50.30.35.9 2863? - tolitius
我无法通过 telnet 访问由 Redis4you 托管的 Redis 实例,即使 Redis4you 门户声称它正在运行。我该如何调试此问题的根本原因? - diya
2个回答

3

问题是:

答案是:

因为您的代码无法连接到主机和端口,您不能通过telnet 50.30.35.9 2863 进行连接。

接下来的问题是:

  • 即使通过Redis4you门户网站宣称正在运行,我仍然无法通过telnet访问Redis实例。 我该如何调试此问题的根本原因?

答案是:

联系Redis4You,并找出原因。从Redis4You联系页面获取:

=>您可以使用以下电子邮件地址与我们联系以获取有关问题或支持问题的信息:redis (@) e-nick . org 如果出现服务器状态问题,请关注我们的Twitter账户:redis4you。 您也可以在那里发布评论和问题,但电子邮件将是更轻松和更快捷的方式。


此外,查看他们在10月17日的Twitter动态,他们“升级到了新发布的Redis 2.4.0的系统。您需要停止然后启动实例,以便升级适用于您。”


-1

如果使用Ubuntu操作系统: 请执行 sudo ufw allow 2863/tcp 命令以开放端口,或关闭防火墙。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接