【问题标题】:How to set the local Hazelcast member as a preferred?如何将本地 Hazelcast 成员设置为首选?
【发布时间】:2020-02-19 20:10:35
【问题描述】:

例如,我们有 3 台机器,每台机器有 1 个成员和 1 个客户端。为了提高性能,我希望每个客户端首先向本地成员发送 put/get 请求,并且只有在没有本地成员的情况下,它才会与集群中的其他成员进行通信。

这有意义吗?如果是,我们可以将“localhost”作为“hazelcast.xml”中的第一个成员来实现这一点吗?

【问题讨论】:

    标签: network-programming hazelcast in-memory-database


    【解决方案1】:

    如果您使用Hazelcast Map,它是分区数据结构,因此您的主数据在 hazelcast 成员之间进行分区。 Hazelcast 客户端是smart enough,用于确定此主要数据的位置并对该 hazelcast 成员执行操作(读取、写入)。因此,连接到本地成员不会在您的用例中增加很大的价值。

    您可以使用Near Cache Feature 来优化您的读取操作。

    【讨论】:

    • 而且我要补充一点,大多数用例的读操作多于写操作,因此优化本地写操作并不是最好的优化方法。使用一致的散列算法将密钥定位到成员,客户端始终可以直接读取和写入拥有密钥的成员,而无需通过“主”节点或进行多个网络跃点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-26
    • 2018-06-06
    • 2021-02-10
    相关资源
    最近更新 更多