我的 django 网页以 45,41 毫秒(根据 django 调试工具栏)获取所有 db 查询,但服务器以 300-350 毫秒返回初始 html 页面(当我查看此号码时,我关闭了 django 调试工具栏)。瓶颈可能在哪里?
我想问题可能出在 django 模板上。他们有那么慢吗?
PS 必须注意它不是真正的网络服务器,而是开发的(只是用“python manage.py runserver”运行应用程序)
我的 django 网页以 45,41 毫秒(根据 django 调试工具栏)获取所有 db 查询,但服务器以 300-350 毫秒返回初始 html 页面(当我查看此号码时,我关闭了 django 调试工具栏)。瓶颈可能在哪里?
我想问题可能出在 django 模板上。他们有那么慢吗?
PS 必须注意它不是真正的网络服务器,而是开发的(只是用“python manage.py runserver”运行应用程序)
Django 的运行服务器很慢,不应该用于基准测试。
Django runserver 命令:Django 的 runserver 只是一个原始服务器,不应该用于生产目的,因为它没有针对速度进行优化或设计时考虑到安全性。相反,它允许快速开发,包括在您进行更改时自动重新加载您的模型、视图和 URL。
让它使用 Nginx 或 Apache 运行 mod_wsgi。
我认为这是一个合理的问题,应该得到比偏转更多的东西。我也遇到过类似的情况,我只是想了解一下性能瓶颈在哪里;慢查询、ORM、模板引擎、类型映射?
结果我的很简单,DEBUG=True实际上是重量级的——我的页面加载大约需要 4 秒,其中 3.5 秒归因于此设置完成的工作。
值得注意的是,我当时正在使用开发服务器,这似乎对我的情况影响很小。不过,不打折@scoopseven 的答案是非常有效的。