在storm中,是否可以为同一拓扑中的一个喷口启用元组打包,并为另一个喷口禁用元组打包?

jaxagkaj  于 2021-06-21  发布在  Storm
关注(0)|答案(1)|浏览(291)

如果我有一个带有两个喷口的storm拓扑,那么可以在一个喷口中启用元组打包,在另一个喷口中禁用元组打包。我之所以要这样做,是因为我想提高吞吐量,并且我愿意放弃其中一个的消息处理保证。

cqoc49vn

cqoc49vn1#

对。实际上,您可以在元组的基础上启用/禁用acking。在 collector.emit(...) 您可以提供消息id(启用确认)或忽略消息id(禁用确认)。
对于其他拓扑,您不需要再关心这个差异。如果您使用一个没有id的元组作为锚定或确认它,storm将忽略这些调用并继续。

相关问题