1

我正在尝试配置为使用 spymemcached 从 memcached 服务器检索数据(尝试了 1.2 和 1.4)。我在这里(http://code.google.com/p/spymemcached/wiki/SpringIntegration)使用他们的 wiki 中提供的值对其进行了配置。但是,如果我将该 bean 作为 aMemcachedClient注入到我的类中,则每次尝试访问缓存时都会超时。我的代码行就这么简单:

        MyClass object = (MyClass) memcachedClient.get(cacheKey);

目前该值不在缓存中,但我希望它返回 null。相反,我得到的只是一个 CXF 异常(这是一个网络服务),其中的原因是:

Caused by: 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)

日志中没有信息(尽管我仍在尝试将它们放入调试中,因为现在我只看到信息的 spymemcached 日志)。有人有类似的问题吗?我可以通过 telnet 访问 memcached 服务器,并且 get 正确返回END

谢谢。

4

1 回答 1

2

问题在于使用BINARY协议。切换到TEXT工作正常。我猜 memcached 的安装版本不支持这个协议 - 但是这不是一个容易的捕获!

于 2012-05-30T12:23:18.803 回答