我们是否可以在Hazelcast分布式队列上执行分区感知操作?
因此,例如,我将在一个队列中有多个使用者节点,并希望每次都由同一个节点处理“相似”类型的消息。类似的类型,我指的是消息的一些业务密钥。
目前,我们有一个分布式流数据处理生态系统,通过在IMap上使用来自本地入口侦听器的消息。将特定的对象模型属性设置为密钥,因此我们知道模型在分区中按键分布。这样,处理逻辑就可以在本地执行,而不需要使用分布式锁(或者根据设计契约完全不使用任何锁)。我希望使用分布式阻塞队列来替代类似的行为。
那可行吗?使用Hazelcast 3.3.3
发布于 2015-01-27 11:16:05
您知道队列(当前)不是分区数据结构吗?因此,集群中只有一个成员负责存储该队列中的所有数据(以及备份的另一个成员)。
您可以控制队列的存储位置,例如,如果您有两个队列,并且希望它们存储在同一个分区中,请使用
foo“某某酒吧”某物
在这种情况下,两个队列都存储在“somekey”分区中。
https://stackoverflow.com/questions/28165185
复制相似问题