在开发过程中,有很多时候需要了解程序性能瓶颈,比如程序执行时间、网络耗时、数据库连接时间等;
那接下来,django silk就派上用场了!

安装

https://github.com/jazzband/django-silk

pip install django-silk
# or
pip install https://github.com/jazzband/silk/archive/3.0.1.tar.gz

settings.py

MIDDLEWARE = [
...
'silk.middleware.SilkyMiddleware',
...
] INSTALLED_APPS = (
...
'silk'
)

urls.py

urlpatterns += [url(r'^silk/', include('silk.urls', namespace='silk'))]

迁移

python manage.py makemigrations

python manage.py migrate

python manage.py collectstatic

性能报告

启动项目后,访问:项目网址/silk/,可查看性能报告,访问项目页面后,查看报告;
摘要报告:

请求列表:

请求详细:

请求的sql部分:

查看某一条sql执行情况:

需要程序详细的跟踪记录和执行情况,需要添加装饰器,以联系上下文来参考:
settings设置:

# 使用Python的内置cProfile分析器
SILKY_PYTHON_PROFILER = True # 生成.prof文件,silk产生的程序跟踪记录,详细记录来执行来哪个文件,哪一行,用了多少时间等信息
SILKY_PYTHON_PROFILER_BINARY = True # .prof文件保存路径
SILKY_PYTHON_PROFILER_RESULT_PATH = '/data/profiles/'

函数加上装饰器

from silk.profiling.profiler import silk_profile

@silk_profile(name='user login') # name在Profiling页面区分不同请求名称
def test(request):
pass

访问程序后,查看
分析情况:

使用标准库PSTATS查看.PROF文件

profiles文件也可以用python标准库中的pstats查看,大致就是长这样:

django性能分析工具之silk的更多相关文章

  1. Python, Django 性能分析工具的使用

    最近接手的 Apache HUE 项目性能出现了问题,线上经常出现响应时间过长或因为时间过长而无法服务等问题.老大让我准备弄个性能分析工具,便于追踪和分析平台当前的瓶颈出现在哪里. 那就搞起吧!先从代 ...

  2. 强大的django-debug-toolbar,django项目性能分析工具

    强大的django-debug-toolbar,django项目性能分析工具 给大家介绍一个用于django中debug模式下查看网站性能等其他信息的插件django-debug-toolbar 首先 ...

  3. Java 性能分析工具 , 第 3 部分: Java Mission Control

    引言 本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Jav ...

  4. Java 性能分析工具 , 第 2 部分:Java 内置监控工具

    引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工 ...

  5. Java 性能分析工具 , 第 1 部分: 操作系统工具

    引言 性能分析的前提是将应用程序内部的运行状况以及应用运行环境的状况以一种可视化的方式更加直接的展现出来,如何来达到这种可视化的展示呢?我们需要配合使用操作系统中集成的程序监控工具和 Java 中内置 ...

  6. 系统级性能分析工具perf的介绍与使用

    测试环境:Ubuntu16.04(在VMWare虚拟机使用perf top存在无法显示问题) Kernel:3.13.0-32 系统级性能优化通常包括两个阶段:性能剖析(performance pro ...

  7. 性能分析工具-PerfView

    Roslyn的PM(程序经理) Bill Chiles,Roslyn使用纯托管代码开发,但性能超过之前使用C++编写的原生实现,这有什么秘诀呢?他最近写了一篇文章叫做<Essential Per ...

  8. 11个Visual Studio代码性能分析工具

    软件开发中的性能优化对程序员来说是一个非常重要的问题.一个小问题可能成为一个大的系统的瓶颈.但是对于程序员来说,通过自身去优化代码是十分困难的.幸运的是,有一些非常棒的工具可以帮助程序员进行代码分析和 ...

  9. Linux性能分析工具的安装和使用

    转自:http://blog.chinaunix.net/uid-26488891-id-3118279.html Normal 0 7.8 磅 0 2 false false false EN-US ...

  10. php性能分析工具 - xhprof的安装使用

    一.前言 有用的东西还是记录下来吧,也方便以后的查询:这次记录一下xhprof的安装使用: xhprof是facebook开源出来的一个php轻量级的性能分析工具,跟Xdebug类似,但性能开销更低, ...

随机推荐

  1. EF Core – QueryFilter & Interception

    主要参考 Global Query Filters Interceptors QueryFilter QueryFilter 就是默认过滤, 非常适合用来做 Soft Delete builder.H ...

  2. 可持久化线段————主席树(洛谷p3834)

    洛谷P3834 可持久化线段树 2 问题描述: 给定n各整数构成的序列,求指定区间[L,R]内的第k小值(求升序排序后从左往右数第k个整数的数值) 输入: 第一行输入两个整数n,m,分别代表序列长度n ...

  3. 暑假集训CSP提高模拟2

    A.活动投票 主元素问题,用摩尔投票 #include<bits/stdc++.h> using namespace std; int n,a=-1,acnt,x; int main(){ ...

  4. 打开word报错“内存或磁盘空间不足,无法显示所请求的字体”

    起因: 有一个部门同学在打开服务器上的某个word文档时报错,但是打开本地word文档正常,经过网上查询资料后发现有可能是以下几种原因造成. 可能造成此报错的原因: 1. 文档被锁定 解决办法: 鼠标 ...

  5. LeetCode 327. Count of Range Sum 区间和的个数

    给定一个整数数组 nums,返回区间和在 [lower, upper] 之间的个数,包含 lower 和 upper.区间和 S(i, j) 表示在 nums 中,位置从 i 到 j 的元素之和,包含 ...

  6. ASP.NET Core OData 9的发布,放弃 .NET Framework

    Microsoft 于 2024 年 8 月 30 日宣布推出 ASP.NET Core OData 9 包. 这个新包将ASP.NET Core与.NET 8 OData库保持一致,改变了OData ...

  7. 好文分享 | 记一次Oracle12c数据库SQL短暂缓慢问题分析

    本文为墨天轮社区作者 张sir 原创作品,记录了日常运维Oracle数据库过程中遇到的一个慢SQL问题的解决.优化过程,文章内容全面具体.分析到位,且含有经验总结,分享给各位. 问题现象 这次出问题的 ...

  8. 区分::after和:before中的单冒号和双冒号的作用

    单冒号:一般指的是伪类,如鼠标悬停状态设置样式:选择器:hover {设置样式} 双冒号一般指伪元素,给元素的前面/后面添加内容.内容数据按堆栈数据结构存储.

  9. 谈谈你对 vue 的理解

    vue 是创建用户界面的 js 框架 ,是创建 spa 应用的框架 :使用 mvvm 模式,数据驱动视图模型 ,业务逻辑和页面解构分离开发:使用高效的 diff 算法渲染页面结构 : 采用组件化模式, ...

  10. AI之道|诺奖对AI的偏爱是真魔幻【悟空非空也】

    一.背景 回归 2024 年诺贝尔物理学奖被授予 John J.Hopfield(霍普菲尔德) 和 Geoffrey E.Hinton(辛顿),当时物理学界都震惊了,纷纷在打听霍普菲尔德和辛顿,他们两 ...