Storm的ack机制
来源:互联网 发布:ipad能用mac系统 编辑:程序博客网 时间:2024/04/29 02:59
Storm的ack机制:
1.Storm所谓的消息可靠性指的是Storm保证每个tuple都能被topology完全处理,而且处理的结果要么成功要么失败。出现失败的原因可能有两种,即节点处理失败或者处理超时。
2.Storm的Bolt有BasicBolt和RichBolt,在BasicBolt中,BasicOutputCollector在emit数据的时候,会自动和输入的tuple相关联,而在execute方法结束的时候那个输入tuple会被自动ack(有一定的条件)。
3.在使用RichBolt时要实现ack,则需要在emit数据的时候,显示指定数据源的tuple,即collector.emit(oldTuple, newTuple);并且需要在execute执行成功后调用源tuple的ack进行ack.
4.如果可靠性对你来说不是那么重要,你不太在意在一些失败的情况下损失一些数据,那么你可以通过不跟踪这些tuple树来获取更好的性能。
有三钟方法可以去掉可靠性:
1.把Config.TOPOLOGY_ACKERS设置成0,Storm会在Spout发射一个tuple之后立马调用spout的ack方法,也就是说这个tuple树不会被跟踪。
2.在tuple层面去掉可靠性。可以在发射tuple的时候不指定messagid来达到不跟踪某个特定的spout tuple的目的。
3.在发射这些tuple的时候unanchor它们。这样这些tuple就不会在tuple树里,也就不会被跟踪了。
(其实2和3是一个意思!)
阅读全文
0 0
- Storm的ack机制
- Storm的ack机制
- 转--Storm的ack机制
- Storm的ACK机制与编码实例
- Storm的BaseBasicBolt源码解析ack机制
- storm 的ack机制(可靠性)
- storm中的ack机制
- storm ack机制//
- Storm学习----ACK机制
- Storm ACK机制
- storm ack机制
- ack是什么,如何使用Ack机制,如何关闭Ack机制,基本实现,STORM的消息容错机制,Ack机制
- storm ack机制流程详解
- storm中的ack-fail机制
- Storm ack容错机制案例
- Storm ack容错机制案例
- Storm的ack机制在项目应用中的坑
- Storm并发模型及ACK机制处理
- C语言总结之异或运算的一些特性及巧妙应用
- 接口
- 紧急BUG修正
- iOS企业版打包流程
- c#对list排序示例
- Storm的ack机制
- Mac版本的docker安装
- Maven build多个war包合并
- 无限级分类之查找子孙树
- 1.1安装 vs sdk
- hdoj1058 Humble Numbers (排序)
- Python爬虫下载QQ音乐网站歌曲
- 深入理解LCD之基本特性
- ubuntu常用命令