风暴:可以为一个螺栓设置topology.message.timeout.secs更高

时间:2013-08-30 15:04:37

标签: apache-storm

我的部分拓扑结构取决于使用第三方API,它可以限制15分钟窗口内的某些调用。最坏的情况是速率限制将降落并且螺栓将需要休眠15分钟。不幸的是,似乎我不能告诉风暴在任务中“睡觉”15分钟,但我希望我错了。

或者,有没有办法在风暴中解决时间限制的任务? (有一个喷口喂另一个喷口吗?)。

3 个答案:

答案 0 :(得分:3)

我不知道有任何允许您这样做的配置,Config没有提供配置条目。

解决方法正如您所建议的那样。当您从第三方API获得输出时,将其输入到专用Spout,然后将其发送到“回调”Bolt。

答案 1 :(得分:1)

您可能需要查看ticktuple(但仅限600秒)

```
Config conf = new Config();
conf.put(Config.TOPOLOGY_TICK_TUPLE_FREQ_SECS, 1);
```

请看一下this

答案 2 :(得分:1)

可能要查看here

提到的TOPOLOGY_DISRUPTOR_WAIT_STRATEGY属性