【问题标题】:Minimizing Hazelcast chatter and overhead最大限度地减少 Hazelcast 的喋喋不休和开销
【发布时间】:2013-05-22 16:50:23
【问题描述】:

我们的应用需要同时在大量机器和单个独立机器上运行。它具有三个不同的集群,每个集群执行一个大部分独立的功能。集群 A 是主要的,集群 B 和 C 是独立的,但它们都需要访问 A 中的地图才能知道将请求路由到哪里。访问需要超快。

我应该选择哪种设置?

  1. 每个集群都有自己的 Hazelcast 实例。集群 B 和 C 也是 A 实例的 lite 成员。

  2. 每个集群都有自己的 Hazelcast 实例。集群 B 和 C 使用 Hazelcast 客户端与 A 通信。

  3. 一个适用于所有集群的巨型实例。

我担心随着集群变得越来越大,可能会出现数百台机器的干扰和开销。哪种设置最具可扩展性?

另外,是否有任何地方详细说明 Hazelcast 传递的消息?例如,我想确切地知道添加或删除密钥时会发生什么。

【问题讨论】:

    标签: hazelcast


    【解决方案1】:

    尽量避免 lite-member 设置 (1),因为使用 lite-members 维护集群更加困难。

    如果所有这些机器/节点都在同一个本地网络上,并且节点数在 50 左右,您可以使用 (3).. 全部在一个集群中。否则我会选择(2),因为您可以很好地扩展客户端并且它们非常轻量级。

    【讨论】:

    • 当单个集群超过 50 个节点时会发生什么?
    • 嗨,Talip,感谢您的回答,您能否评论一下集群的闲聊,这主要取决于对象的大小和写入次数吗?有什么好方法可以“观察”或评估集群的运行情况吗?
    • @ccleve 50 不是一个硬数字。如果您拥有惊人的可靠和高吞吐量的网络,那么您甚至可以享受 1000 个节点的集群。经验法则是集群越小越好,因为网络可能会成为一个问题,因为你有更大的集群......断开连接、网络分区、达到网络吞吐量限制等的可能性更高。
    • @vikingsteve 延迟和吞吐量统计数据是我的最爱。您还可以尝试管理中心提供的“健康检查”功能。 hazelcast.com/mancenter.jsp
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-27
    • 2012-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多