如果我有一个带有两个喷口的storm拓扑,那么可以在一个喷口中启用元组打包,在另一个喷口中禁用元组打包。我之所以要这样做,是因为我想提高吞吐量,并且我愿意放弃其中一个的消息处理保证。
cqoc49vn1#
对。实际上,您可以在元组的基础上启用/禁用acking。在 collector.emit(...) 您可以提供消息id(启用确认)或忽略消息id(禁用确认)。对于其他拓扑,您不需要再关心这个差异。如果您使用一个没有id的元组作为锚定或确认它,storm将忽略这些调用并继续。
collector.emit(...)
1条答案
按热度按时间cqoc49vn1#
对。实际上,您可以在元组的基础上启用/禁用acking。在
collector.emit(...)
您可以提供消息id(启用确认)或忽略消息id(禁用确认)。对于其他拓扑,您不需要再关心这个差异。如果您使用一个没有id的元组作为锚定或确认它,storm将忽略这些调用并继续。