我对python还比较陌生。我有一个基于django的web应用程序,我在其中使用kafka执行一些任务。我正在使用 confluent-kafka
Package 器与Kafka经纪人沟通。
因此,一旦在kafkabroker上创建了一个主题,我就指派一个消费者来订阅这个过程,为了使这个过程无阻塞,我使用 multiprocessing
模块,以便使用者在单独的线程上运行,而不是阻塞主应用程序线程。
但是,我不确定,如果我的服务器关闭会发生什么?即使服务器没有运行,进程是否仍会像cronjobs一样运行?
如果没有,请有人建议我如何触发我的消费者,使它是独立于我的django服务器?
1条答案
按热度按时间z18hc3ub1#
如果您需要您的web服务器从kafka实际获取数据,那么它们需要一起运行。
您可能不希望使用者主动地在后台运行(作为一个单独的进程,而不是一个线程),因为这样您就不会有效地处理消息。
根据您的数据是什么,您可以在与django相同的机器上使用kafka connect将kafka事件写入数据库,然后django将查询数据库