Python 活动循环在Django>=3.1异步视图

Python 活动循环在Django>=3.1异步视图,python,django,python-asyncio,Python,Django,Python Asyncio,我正在使用Django3.1中的新异步视图 我想要的一些好处是,在视图已经给出了它的HttpResponse之后,执行一些简单的fire-and-forget“tasks”,比如发送推送通知或发送电子邮件。 我不是在寻找像芹菜这样的第三方软件包的解决方案 为了测试此异步视图,我使用了本教程中的一些代码: async def http_call_async(): 对于范围(1200)中的num: 等待asyncio.sleep(1) 打印(个) #TODO:异步发送电子邮件 打印(‘完成’) 异步

我正在使用Django3.1中的新异步视图

我想要的一些好处是,在视图已经给出了它的
HttpResponse
之后,执行一些简单的fire-and-forget“tasks”,比如发送推送通知或发送电子邮件。 我不是在寻找像芹菜这样的第三方软件包的解决方案

为了测试此异步视图,我使用了本教程中的一些代码:

async def http_call_async():
对于范围(1200)中的num:
等待asyncio.sleep(1)
打印(个)
#TODO:异步发送电子邮件
打印(‘完成’)
异步定义异步_视图(请求):
loop=asyncio.get\u event\u loop()
创建任务(http\u call\u async())
返回HttpResponse(“非阻塞HTTP请求”)
我用uvicorn启动了django服务器

当我向该视图发出请求时,它将立即返回HTTP响应“非阻塞HTTP请求”

同时,在HTTP响应之后,事件循环继续愉快地打印最大为200的数字,然后打印“完成”

这正是我想利用的行为,我的火和忘记任务

不幸的是,我找不到任何关于运行此代码的事件循环生命周期的信息

事件循环的有效期有多长? 有超时吗? 这取决于什么?在乌维康?这是可配置的吗


是否有讨论此主题的资源?

也许最好将此问题提交给Django问题跟踪者或支持论坛?