CouchBase Client与Spymemcache,客户端使用

时间:2014-08-05 05:22:40

标签: java caching memcached couchbase

我将使用CouchBase作为我的缓存层。我的缓存是序列化对象,而不是(总是)文档类型或JSON值。 couchbase客户端(Couchbase-Java-Client-1.4.3)也使用Spymemcache jar,它是memcached服务器的客户端。

我的问题是,

  • 我应该只使用Couchbas Client将我的对象缓存到couchbase服务器吗?
  • 如果我使用默认Spymemcache客户端进行缓存怎么办?如果我使用,有什么可能是使用couchbase客户端的优点和结果? Spymemcache客户端可以自行处理服务器节点和节点故障吗?

1 个答案:

答案 0 :(得分:3)

您不应该将Spymemcached与Couchbase一起使用。你可以,但我建议反对它。首先,CouchbaseClient使用Spymemcached jar,因为Memcached和Couchbase都使用memcached二进制协议进行键值操作。当我们最初开始为Couchbase编写Java客户端时,重新实现已经编写的东西是没有意义的,因此我们使用Spymemcached因为它表现非常好。您可以将Spymemcached视为执行所有基本操作(如发送消息和Couchbase客户端),因为它添加了所有可以轻松使用Couchbase的优秀功能。

  
    

如果我使用默认的Spymemcache客户端进行缓存怎么办?

  

无论您使用哪种客户端,所有内容都会通过缓存,因此无需使用两个不同的客户端。

  
    

使用couchbase客户端有什么优点和缺点?

  

如果您不使用CouchbaseClient,您将使用更原始的东西。这样想吧。 Couchbase花了大约3年的时间为CouchbaseClient添加功能,使Couchbase非常容易使用。 CouchbaseClient将处理拓扑更改并添加Spymemcached没有的操作。

  
    

Spymemcache客户端可以自行处理服务器节点和节点故障吗?

  

不,但是如果您通过Moxi发送流量,那么您将能够处理节点故障。

如果您使用Couchbase,我甚至不会使用Spymemcached。