使用来自django应用程序的kafka消息

jum4pzuy  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(624)

我正在设计一个基于django的web应用程序,它能够通过web套接字提供kafka主题中需要使用的数据。
此时,我提出了一个分为两个组件的解决方案:一个组件使用kafka提供的数据,对检索到的数据执行一些基本操作,并使用http请求将结果发送到django应用程序。在收到请求之后,一条消息会被写入特定的django通道。
有没有更好的架构来解决这种情况?我应该在celery 异步任务的“while true”循环中包含所有kafka部分吗?我应该在django启动时生成一个新进程吗?如果是这样,我还可以使用django信号通过websocket发送数据吗?
谢谢,fb

mklgxw1f

mklgxw1f1#

是的,您可以使用您的django代码/存储库,并通过django orm构建单独的应用程序/程序来处理kafka队列和数据库
只需在这个程序的开头添加如下代码

sys.path.append(os.getcwd())
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "<your_app>.settings")
django.setup()

然后你可以在这个程序中使用你的模型,比如

from <your_app>.models.timeslots import TimeSlotReserve

另外一个好主意是在这个单独的应用程序中添加一些多线程

相关问题