我不明白如果消息过程只能使用一次,应该使用 trident 是啥意思
Posted
技术标签:
【中文标题】我不明白如果消息过程只能使用一次,应该使用 trident 是啥意思【英文标题】:I don't understand what's mean that should use trident if the message process must only once我不明白如果消息过程只能使用一次,应该使用 trident 是什么意思 【发布时间】:2017-12-12 08:00:23 【问题描述】:我不明白如果消息处理必须只用一次,应该使用三叉戟是什么意思 我可以在 BaseRichSpout 上使用 ack() 和 fail() 只处理一次消息吗? 如果我不需要三叉戟的功能(例如分组,jonning..),我可以使用BaseRich吗?
【问题讨论】:
【参考方案1】:Storm 支持“至少一次”流程,失败的消息会从头开始处理,会造成一些重复。
Trident 是支持“exactly once”流程的一种方式。
所以如果你必须在storm中只处理一次消息,你必须使用trident。
【讨论】:
以上是关于我不明白如果消息过程只能使用一次,应该使用 trident 是啥意思的主要内容,如果未能解决你的问题,请参考以下文章