【发布时间】:2021-09-27 09:57:19
【问题描述】:
- 我有一个 django 应用程序
- 我使用这个 [docker] (https://github.com/tiangolo/uvicorn-gunicorn-docker) 进行生产部署
当我使用以下方式运行应用程序时:
gunicorn --log-level debug --workers 3 myapp.asgi:application --worker-class uvicorn.workers.UvicornWorker
我看到了警告
ASGI 'lifespan' protocol appears unsupported.
- 在阅读here 后我了解django 不支持,但这对我的应用程序有影响吗?或者效果应该在哪里?
- 我的应用正在使用同步端点,例如:
class MyViewSet(viewsets.ModelViewSet):
queryset = My.objects.all()
serializer_class = MySerializer
通过使用 ASGI 运行,对数据库的调用将是异步的吗?
- 我不使用任何网络套接字
- 我可以在网上看到 asgi.py 文件的多个版本,其中包含许多不同的中间件和
django.setup()关键字,我在哪里可以找到有关用例的文档?
【问题讨论】:
-
最好在一篇文章中提出一个问题... Lifespan 只是一个事件,所以,就像应用程序启动时,它会知道,重新启动,然后它只会知道。