如何为storm.config.setMessagetimeoutecs设置最佳值



我正在研究Apache Storm Topology。我有不同的螺栓,他们执行诸如cosmosdb插入,REST API调用等功能等功能。

我想为storm.config.setmessagetimeoutecs设置价值。

现在我已经设置了5分钟,但由于消息超时,我仍然可以看到现场失败。拓扑是否有任何最大值的消息。

以及如何设置storm.config.setMessagetimeoutsecs

的最佳值

我不相信有最大的超时,否。但是,您可能不想将其设置得太高,因为这意味着,如果在网络传输过程中实际上丢失了元组,则需要更长的时间才能确定它已经丢失并重播。

您是否将topology.max.spout.pending设置为合理的价值?这可以帮助避免一次飞行中的太多元素,这有助于保持完整的延迟。

我还会考虑5分钟以上是您的元组是否合理的处理时间。我不知道您的用例,所以也许这是合理的,但是对我来说似乎很长一段时间。

如果您实际上需要处理一些需要这么长时间的元组,则可以考虑将拓扑分解为较小的拓扑,因此您可以为缓慢的部分设置较高的超时,而其余的超时时间更低。

相关内容

  • 没有找到相关文章

最新更新