bolt BaseBasicBolt BaseRichBolt

baseBasicBolt 自带ack 机制

下面是BasicBoltExecutor的一段源码,如果你写的bolt跑出FailedException 异常,basicBolt会调用fail,如果处理成功,会调用ack方法

public void execute(Tuple input) {
    _collector.setContext(input);
    try {
        _bolt.execute(input, _collector);
        _collector.getOutputter().ack(input);
    } catch(FailedException e) {
        if(e instanceof ReportedFailedException) {
            _collector.reportError(e);
        }
        _collector.getOutputter().fail(input);
    }
}





你可能感兴趣的:(storm)