连接到redis的Jedis:JedisConnectionException

时间:2014-06-25 19:57:14

标签: redis connection jedis

我正在尝试将jedis客户端应用程序连接到远程redis服务器。附件是客户的代码:

public static void main(String[] args) {

    Jedis jedis = new Jedis("192.168.1.40",9124);   
    if(jedis.isConnected())
        System.out.println("connected");
    jedis.ping();
}

代码工作得很好,以前工作正常。但突然之间,应用程序似乎出现了问题。现在运行它时,我得到以下堆栈跟踪:

Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: Unknown reply: 
at redis.clients.jedis.Protocol.process(Protocol.java:141)
at redis.clients.jedis.Protocol.read(Protocol.java:200)
at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:285)
at redis.clients.jedis.Connection.getStatusCodeReply(Connection.java:184)
at redis.clients.jedis.BinaryJedis.ping(BinaryJedis.java:66)
at TestJedis.main(TestJedis.java:43)edis.BinaryJedis.ping(BinaryJedis.java:66)
at TestJedis.main(TestJedis.java:43)

我已经检查了我的远程服务器。它正在运行本地客户端能够访问服务器。 jedis客户端能够连接到服务器,但它无法在redis上执行任何命令。无法ping远程服务器并且它是连接问题,它会给出套接字超时错误。我无法弄清楚这个问题的原因。有人可以帮我解决这个问题吗?

提前致谢!

1 个答案:

答案 0 :(得分:1)

问题在于远程连接配置。我更改了远程redis服务器的绑定以收听VM的IP,问题解决了。