【问题标题】:django query is slow, but my sql query is fastdjango查询很慢,但是我的sql查询很快
【发布时间】:2021-12-13 21:59:23
【问题描述】:

我的 django 应用程序中有一个非常简单的 vie

def notProjectsView(request):
context = {
    'projects':notProject.objects.all(),
    'title':'Not Projects | Dark White Studios'
}
return render(request, 'not-projects.html', context)

当我删除上下文时,它运行得很快,但它是一个简单的查询,不应该这么长,数据库也没有很多记录,它有 1 个项目,我在模板中查询 project.notProjectImage.all这可能会导致 n+1 问题,但我删除了该部分进行测试,它仍然很慢 Django 调试工具栏显示约 50 毫秒的 sql 查询,而时间选项卡中的实际请求超过 15 秒

【问题讨论】:

标签: python django django-debug-toolbar


【解决方案1】:

因此,您已经消除了数据库查询,因为它很慢。你需要去别处看看。测试视图时是否很慢(使用 Django 测试框架获取 html 或 POST 数据并检查 html 响应)?然后你就消除了浏览器中发生的一些事情,比如行为不端的脚本或框架。这留下了项目的 Python 代码,或者它运行的机器有问题。循环的东西是否比它应该的要多得多?还是您的开发人员机器因为内存不足而出现页面抖动?

(哦,数据库在哪里?开发人员通常将其托管在他们正在开发的机器上,但如果它是基于云的,请查看互联网连接的性能,可能还有服务本身的性能)。

始终像夏洛克·福尔摩斯一样工作。 “一旦你排除了不可能,剩下的,无论多么不可能,都必须是事实。”

顺便说一句,我最近发现我的开发人员机器上偶尔出现的缓慢是由于(Cinnamon/Linux)GUI 中的一个错误。那当然是我在完全消除其他所有东西之前想去的最后一个地方。

【讨论】:

    猜你喜欢
    • 2022-11-18
    • 1970-01-01
    • 2021-08-24
    • 1970-01-01
    • 1970-01-01
    • 2011-12-06
    • 2014-02-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多