我对Python很新。我有一个基于django的Web应用程序,我正在使用Kafka执行一些任务。我正在使用confluent-kafka
包装器与Kafka Broker进行通信。
因此,一旦在kafka代理上创建了一个主题,我就指定一个使用者来订阅这个进程,为了使这个非阻塞,我使用multiprocessing
模块,以便使用者在一个单独的线程上运行而不阻塞主应用程序线程。
但是,我不确定,如果我的服务器关闭会发生什么?即使服务器没有运行,进程是否仍会像cronjobs一样运行?
如果不是,有人可以建议我如何触发我的消费者,使其独立于我的django服务器?
如果您需要Web服务器实际从Kafka获取数据,则需要一起运行。
您可能不希望消费者在后台主动运行(作为单独的进程,而不是线程),因为那时您实际上没有处理消息。
根据您的数据,您可以在与Django相同的机器上使用Kafka Connect将Kafka事件写入数据库,然后Django将查询数据库而不是