【问题标题】:Membase? How does this work?内存库?这是如何运作的?
【发布时间】:2012-03-02 01:01:54
【问题描述】:

当我添加一个IP地址并建立连接时,客户端是否获取所有服务器的可用IP地址?

或者当其中一个出现故障时,客户端是否需要知道至少 2 个 IP 地址?

这是我一直在用 (JAVA) 测试的代码

List addrList = new ArrayList();
 addrList.add("192.168.20.105:11211");
 addrList.add("192.168.20.106:11211");
 addrList.add("192.168.20.101:11211");

try {

List addr = AddrUtil.getAddresses(addrList);
 mbsClnt = new MemcachedClient (new BinaryConnectionFactory() , addr);

如果我只添加了一个 IP 地址,并且在我执行获取和设置操作时服务器出现故障。 客户端是否能够连接到其他可用的服务器? 因为如果我添加一个观察者并看到可用的服务器,我看不到任何(如果我在列表中只添加一个服务器) 这是否意味着我必须添加尽可能多的 IP 地址以避免连接失败?

另一个问题是,我可以看到,当我添加 IP 地址时,我必须输入链接到特定 vBucket 的端口号。让所有客户观看同一个 vbucket 是否会造成溢出?如果是这样,我应该如何平衡客户端以观看不同的 vBucket?

对不起,如果我的英语没有真正让你明白T^T。

任何形式的建议或答案将不胜感激!谢谢!

【问题讨论】:

    标签: membase spymemcached


    【解决方案1】:

    这里的问题是您在 MemcachedClient 中使用了 memcached 构造函数。如果您使用的是 2.7.x 或更低版本,您希望使用带有 URI 列表、存储桶名称和密码的构造函数。该构造函数将连接到 Membase/Couchbase 节点并获取集群中所有服务器的列表。然后,如果您重新平衡或故障转移节点,Spymemcached 将做正确的事情并连接到新节点或断开与离开集群的节点的连接。

    在 Spymemcached 2.8.x 及更高版本中,我们实际上删除了此功能并将其放入名为 Couchbase Client 的新项目中。在那个项目中,您只会找到我上面提到的构造函数。这应该使您应该做的事情更加明显。 Couchbase Client 1.0.1 目前不支持视图,但将在下一个版本中添加。此外,Couchbase Client 与所有版本的 Membase 兼容。

    另一件事。您只需提供一个 URI 即可获取集群中所有节点的列表,但建议您添加与集群中的服务器一样多的 URI。这样做的原因是,如果您在 URI 中指定的节点出现故障,您将失去与集群的连接,因为您将无法获得集群更新。如果您指定了多个 URI,则 Spymemcached/Couchbase 客户端将尝试连接到 URI 列表中的下一个节点。

    【讨论】:

    • 好吧,我不得不使用 Membase.. 而不是 couchbase.. 一开始我在代码中添加了一个观察者并尝试查看 getAvailableServers。但是,如果我只添加一个 URI,它只会显示一个可用的服务器。所以我仍然对客户端获取集群中所有服务器的列表感到困惑。有什么办法可以检查吗?此外,我还看到了不同类型的 Membase 部署。我对“客户端的 moxi”感到困惑。我有点不明白这个定义......如果我能看到任何例子或它是如何工作的,那就太好了。谢:D
    • 让我们将此讨论移至 Couchbase 论坛,因为我认为 stackoverflow 不适合此类讨论。 couchbase.com/forums/thread/…
    • 嗯,这样合适吗?我想知道 couchbase 和 membase 之间的兼容性。它们完全准确吗?包括api?这两者之间的唯一区别是数据库吗?
    • Couchbase 1.8 更名为 Membase。 Couchbase 2.0 将包含一个不同的持久层,并能够通过视图进行查询。您可以在 Couchbase 1.8 中执行的所有操作都可以在 2.0 中执行。 java sdk,couchbase 客户端 1.0.1,专为 Couchbase 1.8 制作,也适用于 Membase 1.6 和 1.7。 couchbase 客户端 1.0.1 中的所有用户级 api 将在 2.0 版本中保持不变。但是,我们将向客户端添加新的 API 以供查看。
    猜你喜欢
    • 2010-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-15
    相关资源
    最近更新 更多