Storm確保訊息被消費
1.spout中nextTuple方法中傳送的tuple需要攜帶msgId
collector.emit(new Values(line),index); //index為Integer型別
2.bolt中需要對tuple進行確認(ack() | fail())public void execute(Tuple tuple) {
String line = tuple.getString(0);
System.out.println(this + " : " + line);
if(new Random().nextBoolean()){
//確認,向上家(也就是Spout)回執成功
collector.ack(tuple);}
else{
//失敗,向上家(也就是Spout)回執失敗
collector.fail(tuple);}
}
3.實現spout的ack()和fail()方法
//下家(Bolt)接收成功處理
System.out.println(this + " : ack() : " + msgId);
}
//下家(Bolt)接收失敗處理
public void fail(Object msgId) {
System.out.println(this + " : fail() : " + msgId);
}
相關文章
- 訊息佇列-如何保證訊息的不被重複消費(如何保證訊息消費的冪等性)佇列
- 使用訊息中介軟體時,如何保證訊息僅僅被消費一次?
- 如何保證訊息不被重複消費
- 消費端如何保證訊息佇列MQ的有序消費佇列MQ
- RabbitMQ使用教程(五)如何保證佇列裡的訊息99.99%被消費?MQ佇列
- 分散式訊息佇列:如何保證訊息不被重複消費?(訊息佇列消費的冪等性)分散式佇列
- 《RabbitMQ》如何保證訊息不被重複消費MQ
- 訊息中介軟體—RocketMQ訊息消費(三)(訊息消費重試)MQ
- MQ系列10:如何保證訊息冪等性消費MQ
- kafka消費者消費訊息的流程Kafka
- 如何透過 SpringBoot+RabbitMQ 保證訊息100%投遞成功並被消費?(附原始碼)Spring BootMQ原始碼
- Kafka 如何保證訊息消費的全域性順序性Kafka
- RocketMQ -- 訊息消費過程MQ
- Kafka 訊息丟失與消費精確一次性Kafka
- RabbitMq如何確保訊息不丟失MQ
- 阿里面試題剖析,如何保證訊息不被重複消費?阿里面試題
- TimeLine模型下確保訊息有序不丟模型
- 訊息佇列——數十萬級訊息的消費方案佇列
- RabbitMQ多消費者順序性消費訊息實現MQ
- SpringBoot 整合 RabbitMQ(包含三種訊息確認機制以及消費端限流)Spring BootMQ
- 關於MQ的幾件小事(三)如何保證訊息不重複消費MQ
- Java多執行緒消費訊息Java執行緒
- Flink實戰:消費Wikipedia實時訊息
- Pulsar訊息傳送、消費架構概述架構
- RocketMq如何順序消費的訊息offestMQ
- 利用redis的hash結構搭建訊息服務(發訊息,訂閱訊息,消費訊息,退訂)Redis
- RabbitMQ中釋出者透過確認機制確保訊息釋出MQ
- RocketMQ系列(三)訊息的生產與消費MQ
- Kafka中消費者延遲處理訊息Kafka
- RocketMQ -- 訊息消費佇列與索引檔案MQ佇列索引
- 阿里雲 KAFKA 消費者接收不到訊息阿里Kafka
- 訊息中介軟體消費到的訊息處理失敗怎麼辦?
- Spring Cloud Stream如何處理訊息重複消費?SpringCloud
- Spring Cloud Stream如何消費自己生產的訊息?SpringCloud
- hyperf 如何對AMQP訊息進行手動消費?MQ
- RocketMQ原始碼解析之訊息消費者(consume Message)MQ原始碼
- 訊息推送平臺的實時數倉?!flink消費kafka訊息入到hiveKafkaHive
- RabbitMQ使用教程(三)如何保證訊息99.99%被髮送成功?MQ