Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 闪电缓慢时,暴风卡夫卡斯波特失败_Java_Apache Kafka_Apache Storm - Fatal编程技术网

Java 闪电缓慢时,暴风卡夫卡斯波特失败

Java 闪电缓慢时,暴风卡夫卡斯波特失败,java,apache-kafka,apache-storm,Java,Apache Kafka,Apache Storm,我使用卡夫卡风暴整合。卡夫卡将数据加载到队列,卡夫卡喷口将提取数据和进程。我有下面的设计 Kafka -> Queue -> KafkaSpout -> Process1 Bolt -> Process2 Bolt 问题是,如果Process2 Bolt处理数据的时间较长,则KafkaSpout会失败,并再次尝试从队列中读取数据,这将导致重复记录 如果Bolt处理速度慢,为什么KafkaSpout会将其视为失败?解决办法是什么?我是否必须在storm中设置任何超时或任何

我使用卡夫卡风暴整合。卡夫卡将数据加载到队列,卡夫卡喷口将提取数据和进程。我有下面的设计

Kafka -> Queue -> KafkaSpout -> Process1 Bolt -> Process2 Bolt
问题是,如果Process2 Bolt处理数据的时间较长,则KafkaSpout会失败,并再次尝试从队列中读取数据,这将导致重复记录


如果Bolt处理速度慢,为什么KafkaSpout会将其视为失败?解决办法是什么?我是否必须在storm中设置任何超时或任何类似属性?

如果处理时间过长,storm将使元组失败,默认情况下为30秒。自Storm以来,一旦失败,Kafka喷口将重播相同的消息,直到成功处理元组


如果元组的消息树未能在指定的超时内完全处理,则认为元组失败。可以使用Config.topology_MESSAGE_timeout_SECS配置在特定于拓扑的基础上配置此超时,默认值为30秒