Storm中,消息可靠性的讨论

西红小柿 2017-01-08 03:07:36
在storm中,消息可靠性问题
1,如果在消息源头spout中,emit的时候,不加messageId,然后在bolt中发生了处理失败问题,人为的调用fail方法,此时storm会重发该条消息吗?
2,如果在消息源头spout中,emit的时候加messageId,然后在bolt中发生率处理失败问题,人为调用fail方法,此时会直接调用spout里面的fail方法,然后根据方法里面的逻辑开始执行,那么依然是要从spout的开始执行,知道错误发生的地方吗? 元组树结构是起什么作用的?
...全文
283 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
西红小柿 2017-01-08
  • 打赏
  • 举报
回复
(1)在系统自己抛出异常后,会自动回调spout的fail方法,具体执行什么逻辑,需要自己实现; (2)在代码里面为避免异常的发生,可以自己手动调用fail方法,避免了等待超时,可以迅速重新处理;
西红小柿 2017-01-08
  • 打赏
  • 举报
回复
急求答案

1,258

社区成员

发帖
与我相关
我的任务
社区描述
Spark由Scala写成,是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用的并行计算框架,Spark基于MapReduce算法实现的分布式计算。
社区管理员
  • Spark
  • shiter
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧