Django-silk性能测试工具安装及使用解析


Posted in Python onNovember 28, 2020

介绍

Silk是Django框架的实时分析和检查工具。

源代码名称:django-silk

源代码网址:  http://www.github.com/jazzband/django-silk

快速开始

1、安装pip install django-silk

2、配置 setting.py

INSTALLED_APPS = (
...
'silk'
)

MIDDLEWARE = [
...
'silk.middleware.SilkyMiddleware',
...
]

3、urls.py

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

4、迁移:生成silk用的相关数据库表

python manage.py makemigrations
python manage.py migrate
python manage.py collectstatic

PS: 如果settings.py中没有配置过STATIC_ROOT,在执行“python manage.py collectstatic”的时候,有可能会报错,提示缺少STATIC_ROOT配置。加上即可。如:STATIC_ROOT = BASE_DI

5、启动项目

python manage.py runserver

6、查看性能报告

http://127.0.0.1/silk

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python生成随机数的方法
Jan 14 Python
python实现超简单端口转发的方法
Mar 13 Python
使用Python脚本和ADB命令实现卸载App
Feb 10 Python
Python实现删除文件中含“指定内容”的行示例
Jun 09 Python
python对excel文档去重及求和的实例
Apr 18 Python
Python3使用xml.dom.minidom和xml.etree模块儿解析xml文件封装函数的方法
Sep 23 Python
解决jupyter notebook 出现In[*]的问题
Apr 13 Python
Python Tornado核心及相关原理详解
Jun 24 Python
Python文件操作及内置函数flush原理解析
Oct 13 Python
python编写函数注意事项总结
Mar 29 Python
手把手教你怎么用Python实现zip文件密码的破解
May 27 Python
python代码实现扫码关注公众号登录的实战
Nov 01 Python
python 实现学生信息管理系统的示例
Nov 28 #Python
最新Python idle下载、安装与使用教程图文详解
Nov 28 #Python
Python3 用什么IDE开发工具比较好
Nov 28 #Python
Pycharm配置autopep8实现流程解析
Nov 28 #Python
Python3.8.2安装包及安装教程图文详解(附安装包)
Nov 28 #Python
Python安装Bs4的多种方法
Nov 28 #Python
Pycharm Plugins加载失败问题解决方案
Nov 28 #Python
You might like
php中global和$GLOBALS[]的分析之一
2012/02/02 PHP
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
InnerHtml和InnerText的区别分析
2009/03/13 Javascript
JavaScript 获取事件对象的注意点
2009/07/29 Javascript
仅IE不支持setTimeout/setInterval函数的第三个以上参数
2011/05/25 Javascript
js里怎么取select标签里的值并修改
2012/12/10 Javascript
Eval and new funciton not the same thing
2012/12/27 Javascript
JS和函数式语言的三特性
2014/03/05 Javascript
Nodejs进程管理模块forever详解
2014/06/01 NodeJs
JavaScript中函数表达式和函数声明及函数声明与函数表达式的不同
2015/11/15 Javascript
浅谈bootstrap源码分析之tab(选项卡)
2016/06/06 Javascript
js修改onclick动作的四种方法(推荐)
2016/08/18 Javascript
AngularJS入门教程之XHR和依赖注入详解
2016/08/18 Javascript
WEB开发之注册页面验证码倒计时代码的实现
2016/12/15 Javascript
JQuery获取鼠标进入和离开容器的方向
2016/12/29 Javascript
vue.js $refs和$emit 父子组件交互的方法
2017/12/20 Javascript
layui监听工具栏的实例(操作列表按钮)
2019/09/10 Javascript
Vue2.X和Vue3.0数据响应原理变化的区别
2019/11/07 Javascript
JQuery常用选择器功能与用法实例分析
2019/12/23 jQuery
[01:10]为家乡而战!完美世界城市挑战赛全国总决赛花絮
2019/07/25 DOTA
[40:03]RNG vs VG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
详解Python 序列化Serialize 和 反序列化Deserialize
2017/08/20 Python
Python3中编码与解码之Unicode与bytes的讲解
2019/02/28 Python
opencv-python 提取sift特征并匹配的实例
2019/12/09 Python
使用pytorch 筛选出一定范围的值
2020/06/28 Python
Python+MySQL随机试卷及答案生成程序的示例代码
2021/02/01 Python
台湾森森购物网:U-mall
2017/10/16 全球购物
这段代码难道不该打印出56吗
2013/02/27 面试题
护士自荐信怎么写
2013/10/18 职场文书
标准毕业生自荐信
2014/06/24 职场文书
员工趣味活动方案
2014/08/27 职场文书
医院领导班子整改方案
2014/10/01 职场文书
工作年限证明范本
2015/06/15 职场文书
人事任命书范本
2015/09/21 职场文书
职场中的你,辞职信写对了吗?
2019/06/26 职场文书
Java Optional<Foo>转换成List<Bar>的实例方法
2021/06/20 Java/Android