在java中实现Memcache的错误

时间:2012-06-15 06:26:14

标签: java memcached

我正在尝试用Java编写一个简单的代码来连接到memcache服务器。我使用spymemcached 2.8 jar,但我收到“服务器重新连接”错误,我无法理解。

代码是:


    **client =  new MemcachedClient(new    BinaryConnectionFactory(),AddrUtil.getAddresses("127.0.0.1:11211"));
    } catch (IOException e) {
       e.printStackTrace();
       System.err.println("connection problem");
    }
     client.set("someKey", 3600, new Integer(10));
    Object myObject=temp.client.get("someKey");
    System.out.println(myObject);
    client.delete("someKey");**

    

但我收到的错误是:

**2012-06-14 17:58:31.412 INFO net.spy.memcached.MemcachedConnection:  Added {QA sa=/127.0.0.1:11211, #Rops=0, #Wops=0, #iq=0, topRop=null, topWop=null, toWrite=0, interested=0} to connect queue
2012-06-14 17:58:31.428 INFO net.spy.memcached.MemcachedConnection:  Connection state changed for sun.nio.ch.SelectionKeyImpl@1621e42
2012-06-14 17:58:31.428 INFO net.spy.memcached.MemcachedConnection:  Reconnecting due to exception on {QA sa=/127.0.0.1:11211, #Rops=1, #Wops=0, #iq=0, topRop=Cmd: 1 Opaque: 1 Key: someKey Cas: 0 Exp: 3600 Flags: 512 Data Length: 1, topWop=null, toWrite=0, interested=1}
java.io.IOException: Disconnected unexpected, will reconnect.
    at net.spy.memcached.MemcachedConnection.handleReads(MemcachedConnection.java:452)
    at net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:380)
    at net.spy.memcached.MemcachedConnection.handleIO(MemcachedConnection.java:242)
    at net.spy.memcached.MemcachedConnection.run(MemcachedConnection.java:833)
2012-06-14 17:58:31.428 WARN net.spy.memcached.MemcachedConnection:  Closing, and reopening {QA sa=/127.0.0.1:11211, #Rops=1, #Wops=0, #iq=1, topRop=Cmd: 1 Opaque: 1 Key: someKey Cas: 0 Exp: 3600 Flags: 512 Data Length: 1, topWop=null, toWrite=0, interested=1}, attempt 0.
2012-06-14 17:58:31.428 WARN net.spy.memcached.protocol.binary.BinaryMemcachedNodeImpl:  Discarding partially completed op: Cmd: 1 Opaque: 1 Key: someKey Cas: 0 Exp: 3600 Flags: 512 Data Length: 1
2012-06-14 17:58:31.444 WARN net.spy.memcached.MemcachedConnection:  Could not redistribute to another node, retrying primary node for someKey.
2012-06-14 17:58:33.444 INFO net.spy.memcached.MemcachedConnection:  Reconnecting {QA sa=/127.0.0.1:11211, #Rops=0, #Wops=1, #iq=0, topRop=null, topWop=Cmd: 0 Opaque: 3 Key: someKey, toWrite=0, interested=0}
2012-06-14 17:58:33.444 INFO net.spy.memcached.MemcachedConnection:  Connection state changed for sun.nio.ch.SelectionKeyImpl@1813fac
Exception in thread "main" net.spy.memcached.OperationTimeoutException: Timeout waiting for value
    at net.spy.memcached.MemcachedClient.get(MemcachedClient.java:1003)
    at net.spy.memcached.MemcachedClient.get(MemcachedClient.java:1018)
    at ballydev.Memcache.main(Memcache.java:29)
Caused by: net.spy.memcached.internal.CheckedOperationTimeoutException: Timed out waiting for operation - failing node: /127.0.0.1:11211
    at net.spy.memcached.internal.OperationFuture.get(OperationFuture.java:93)
    at net.spy.memcached.internal.GetFuture.get(GetFuture.java:62)
    at net.spy.memcached.MemcachedClient.get(MemcachedClient.java:997)
    ... 2 more**

 

任何有任何想法或建议的人? ..请回复......

2 个答案:

答案 0 :(得分:4)

Timed out waiting for operation - failing node: /127.0.0.1:11211 这意味着你的memcached在其他地址上绑定了,或者它没有启动。

答案 1 :(得分:0)

对不起,伙计们,我的机器出了问题,这就是我运行简单代码时遇到这么多麻烦的原因。但是,当我尝试使用不同的盒子并使用它的IP den时,它工作正常......:)

感谢大家跟我一起承担这个...