【发布时间】:2021-08-04 02:29:23
【问题描述】:
我花了一点时间研究 Kafka,我对使用它有一些兴趣,但我的潜在用例有点不标准 - 我有兴趣在单台机器上使用 kafka(现在),以某种短暂的方式。
具体来说,我想从 python 程序启动 zookeeper 和 kafka,连接,将它用于事件流,然后关闭一切。稍后,我希望能够重新启动并连接到旧的 kafka 实例,并阅读之前编写的主题。只要我保持配置不变,这应该是非常可行的。
我有一些在接近工作状态的概念验证代码,但我似乎无法让 Kafka 或 zookeeper 干净地关闭。在 Windows 上,停止 kafka 的批处理脚本只是杀死了该进程,这使 zookeeper 处于不良状态。同样,停止 zookeeper 的批处理脚本只会杀死进程,这意味着它无法以正确的状态启动以进行自我修复。
我也尝试过从 python 向 kafka 和 zookeeper 发送 ctrl+c 事件,就像在终端中运行脚本时一样,但这似乎也不起作用。
有什么方法可以干净地关闭 Windows 上以编程方式启动的 kafka 和 zookeeper 实例?
【问题讨论】:
标签: apache-kafka apache-zookeeper