在运行时重新加载 Storm 配置

Reload Storm configuration in runtime

我有一个在风暴配置图中加载的配置参数,这些配置如何在 运行 期间的每个特定时间段 updated/reloaded 不重新启动拓扑?

我认为最好的办法是将配置放在 Storm 配置映射以外的地方。拓扑配置在worker启动时随topology一起分发给worker。我不知道更新它的方法,更新它可能需要杀死工人,因为 Storm 组件经常使用 prepare 方法中的配置,这只是 运行 当工人开始。

如果您将配置放在其他地方(例如,在您的工作人员可访问的 REST 端点上,或像 Redis 这样的分布式键值存储),您可以使用 tick 元组定期重新加载配置。在这个答案中查看如何使用刻度元组 。