django - 为什么 django 开发服务器的行为像单线程,而文档“默认情况下服务器是多线程的。”- 2.1 版
问题描述
我是 Django Web 框架的初学者,我正在使用 Django 2.1.2。现在遇到一个问题,Django是单线程运行还是多线程运行?我查了文档,说'服务器默认是多线程的'。虽然我在我的本地环境中进行了测试,但它就像单线程一样。
我的视图功能是:
class Hello(APIView):
"""
for testing django single-threading
"""
def get(self, request):
print("enter in the view")
time.sleep(10)
print("finished...")
return HttpResponse("finished!")
我通过以下方式在终端中运行 Django 应用程序:
python manage.py runserver
我几乎在同一时间两次请求该 url,响应是:
enter in the view
finished...
[13/Jan/2019 10:43:50] "GET /account/hello HTTP/1.1" 200 9
enter in the view
finished...
[13/Jan/2019 10:44:00] "GET /account/hello HTTP/1.1" 200 9
它像单线程方式一样处理请求,是我做错了什么还是我理解错了,谢谢你的帮助。
解决方案
推荐阅读
- amazon-web-services - 如何在 Node 中签署 S3 URL 时修复“SignatureDoesNotMatch”错误?
- java - 试图反转嵌套 for 循环的输出
- laravel - 规则对象不触发 pass() 方法
- ruby-on-rails - Rails i18n 不会从 yml 翻译复数上的关系名称
- arrays - 变量可能尚未初始化
- c# - Wpf listview 禁用选择但允许单击
- android - 操作系统错误:没有这样的文件或目录,错误编号 = 2 -- FLUTTER
- python - Pandas 从 col a 等于 y 的行中减去 col a 等于 x 的行
- scala - 从 PromiseActorRef 获取原始 ActorRef 或路径
- javascript - Cordova inAppBrowser 为后续页面注入 JS