0
我试图实施榛树。我想知道如果我使用java.util.concurrent.BlockingQueue,它会自动为它设置一个最大大小。当添加新节点时,榛树内存中队列是否会放大?
假设我启动一个集群,其中包含一个节点,然后在其中实施BlockingQueue,然后我再向集群添加一个节点,因此队列的最大大小会增加,因为现在集群的共享内存为两个节点?
我希望我在这里明确我的观点。
我试图实施榛树。我想知道如果我使用java.util.concurrent.BlockingQueue,它会自动为它设置一个最大大小。当添加新节点时,榛树内存中队列是否会放大?
假设我启动一个集群,其中包含一个节点,然后在其中实施BlockingQueue,然后我再向集群添加一个节点,因此队列的最大大小会增加,因为现在集群的共享内存为两个节点?
我希望我在这里明确我的观点。
你明确了你的观点。
Hazelcast IQueue实现不是分区数据结构。因此它将完全存储在单个成员(以及另一成员的备份)上。
因此,向群集添加更多成员不会增加队列的容量。
一种解决方案是创建一个队列条,以便整个队列不会存储在单个成员上。但这取决于你是否可以处理一个条纹。
我通过Hazelcast文档和两本Hazelcast书进行了搜索,但找不到有关未分区的队列的任何内容。你知道任何以概念的方式解释排队机制的文档吗? – Odinodin
让我们继续讨论邮件列表,因为您在那里发布了类似的问题(我已回复)。如果您需要了解更多信息,可以提出更多问题,我会很乐意回答。 – pveentjer
这意味着榛节点不增加可扩展性,它只是增加了可用性? –