使用 Django-debug-toolbar 优化Query 提高代码效率

一段程序执行效率慢,除了cpu计算耗时外,还有一个很重要的原因是SQL的Duplicated过多,使用Django-debug-toolbar能够快速找出哪些地方的SQL可以优化,提高程序执行效率

1. 安装 Django-debug-toolbar:

pip install django-debug-toolbar

2. 在Django项目中创建APP用于toolbar测试:

toolbar_test
    - __init__.py
    - templates
        - toolbar.html
    views.py

views.py

# coding: utf-8
from django.shortcuts import render
from xxx.utils import func_for_toolbar

def toolbar_view(request):
    # 需要测试的功能函数
    func = func_for_toolbar()
    
    return render(request, "toolbar.html", locals())
toolbar.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
</html>

3. 在Django项目的settings中配置Django-debug-toolbar:
INSTALLED_APPS += (
    'debug_toolbar',
    'toolbar_test',
)

MIDDLEWARE_CLASSES += (
    'debug_toolbar.middleware.DebugToolbarMiddleware',
)

CONFIG_DEFAULTS = {
    # google的jquery 国内可能不能访问  所以这里用 国内的cdn
    'JQUERY_URL': '//cdn.bootcss.com/jquery/2.1.4/jquery.min.js',
}

# 这些请求地址显示debug toolbar(注:后面的2个地址是我本地请求地址)
INTERNAL_IPS = (
    "127.0.0.1", 
    "192.168.xxx.x", 
    "192.168.xxx.xx."
)

4. 配置url:
import debug_toolbar
from toolbar_test.views import toolbar_view


urlpatterns = [
     url(r'^toolbar_view$', toolbar_view),
] + urlpatterns

5. 访问 url  http://192.168.xx.xx:80xx/toolbar_view:

Duplicates次数越多 表示需要着重优化
原文地址:https://www.cnblogs.com/FG123/p/9454971.html