gpt4 book ai didi

python - Django异步请求远程api

转载 作者:行者123 更新时间:2023-11-28 17:38:08 24 4
gpt4 key购买 nike

我有以下代码(简化版)

for data in my_data_array:
res = api_request(data)
#write result to db

这些请求可能需要一些时间,而且数量很多。如何使循环的每次迭代异步并使用 Django 将进度和已完成请求的百分比发送到前端。如果我必须使用 Tornado 或 Celery,请给我有关如何将 Django 与它们集成的信息的链接。

最佳答案

您将需要 Celery(或其他异步任务队列)。要将其与 Django 集成,请参阅 http://celery.readthedocs.org/en/latest/django/first-steps-with-django.html .我建议将 Celery 与 Redis 一起使用,因为 Redis 通常用作缓存,因此您不需要为 Celery 安装另一个后端(主要是 RabbitMQ)。

要获取进度条,计算任务总数 (len(my_data_array)),将值存储在缓存中(例如键 total_count)并添加第二个键(例如 complete_count),值为零.在每个完成的任务中,增加 complete_count 值。

最后一步是查询状态。它只是一个简单的 View ,从缓存中加载这两个值并返回给用户 (html/json)。

关于python - Django异步请求远程api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28325265/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com