我有一个拓扑,它从主题收集修改,对数据进行一些修改,然后将它们发布到 API 上,我们发布的 API 有一些维护期(我们无法在那里发布任何内容的时间),我们已经有了一些返回维护周期的服务,但我们想知道如何在一段时间内禁用拓扑,然后在该周期结束时自动启动它。
我们正在使用以下技术:
- Spring 启动 REST API
- Apache Storm
- Apache 卡夫卡
- 卡夫卡 Storm
不知道Kafka Spout集成中是否有办法停止读取。
感谢您的帮助
最佳答案
您可以在 Storm 上执行此操作:在维护开始时间(使用 TimerTask 等),调用
Nimbus.Client client = NimbusClient.getConfiguredClient(Utils.readStormConfig()).getClient();
..
client.deactivate("topologyName");
最后,调用client.activate。
关于java - 如何禁用拓扑一段时间,然后在该时间段结束时自动启动它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50218651/