调试缓慢的Django Admin视图

Ern*_*est 10 python django

我在Django Admin中的一些观点需要很长时间才能加载.调试Django Admin视图以查看正在咀嚼循环的最佳方法是什么?

Dan*_*nna 9

正如rantanplan评论的那样,django调试工具栏是开始分析的最简单方法(显示在页面加载时执行的所有查询,它们的EXPLAIN,它们执行的时间等).您还可以在这里查看有关分析慢速django安装的问题: 如何在执行时间方面分析django应用程序?

那个问题提到了hotshot的使用,这也是在Django的Wiki上引用django时引用的.


Cra*_*enz 5

如果他们的表非常非常大(几百万条记录就可以解决问题)并且表引擎是 MySQL 的 InnoDB,我也在 Django Admin 中的特定模型中看到了这一点。我花了一段时间才想出解决方法,让我的 Django 管理员再次为 1 亿多条记录的表嗡嗡作响。根本问题最终是COUNT(*)页面加载时的昂贵查询以及每当我使用search_fields来自 ModelAdmin 的其中一个时构建的搜索查询也很糟糕。

我在这里记录了我所有的解决方案,以便他们有一天可以帮助陷入困境的 Django-er:http : //craiglabenz.me/2013/06/12/how-i-made-django-admin-scale/

  • 嗯,你应该在这里总结/给出解决方案,以防链接中断(再次)。 (4认同)