使用 profiler测量在你的Flask 应用程序中定义的端点;并通过web界面提供细粒度的报告。

它给出了这些问题的答案:

  • 应用程序中的瓶颈在哪里?
  • 应用程序中最慢的终结点?
  • 哪些是最常被调用的终结点?
  • 什么导致我的慢速端点? 在哪个上下文中,什么是 ARGS 和 kwargs?
  • 特定请求花费了多少时间?

简而言之,如果你对端点正在做什么和接收的请求进行了了解,请尝试打瓶探查器。

通过使用烧瓶分析器接口,你可以监视所有端点的性能,并通过向下钻取过滤器来调查端点和接收的请求。

1.安装 flask_profiler

pip install flask_profiler

2.在创建 Flask 应用程序时编辑你的代码。

from flask import Flask
import flask_profiler app = Flask(__name__)
app.config["DEBUG"] = True
# 您需要声明必要的配置才能初始化
app.config["flask_profiler"] = {
"enabled": app.config["DEBUG"],
"storage": {
"engine": "sqlite"},
"basicAuth": {
"enabled": True,
"username": "admin",
"password": "admin"},
"ignore": [
"^/static/.*"]
}
# 为了激活flask-profiler,您必须通过flask
# app作为flask-profiler的参数。
# 到目前为止,flask-profiler将跟踪所有已声明的端点。
flask_profiler.init_app(app) @app.route('/helloworld')
@flask_profiler.profile() # 来明确指定此端点()
def hello_world():
return 'Hello World!' @app.route('/welcome', methods=['GET'])
@flask_profiler.profile()
def doSomethingImportant():
return "welcome" if __name__ == '__main__':
app.run(host="0.0.0.0", port=5000)
访问url 确保接口可以成功调用
# http://127.0.0.1:5000/helloworld
# http://127.0.0.1:5000/welcome
# 如果一切可以,Flask-profiler会衡量这些请求。你可以看到结果前往http://127.0.0.1:5000/flask-profiler/
##使用与不同的数据库系统当前支持** Sqlite **和** Mongodb **数据库系统。但是,很容易支持其他数据库系统。如果您想要其他人,请转到贡献文档。(这确实很容易。)

flask-profiler的使用的更多相关文章

  1. Awesome Python

    Awesome Python  A curated list of awesome Python frameworks, libraries, software and resources. Insp ...

  2. Flask - 性能分析(Profiling,profiler,profile)

    1. 疑问 @app.cli.command() @click.option('--length', default=25, help='Number of functions to include ...

  3. Awesome Flask

    Awesome Flask  A curated list of awesome Flask resources and plugins Awesome Flask Framework Admin i ...

  4. Awesome Flask Awesome

    A curated list of awesome Flask resources and plugins Awesome Flask Framework Admin interface Authen ...

  5. flask-profiler, 监视端点调用并尝试进行某些分析的Flask 事件探查器

    源代码名称:flask-profiler 源代码网址:http://www.github.com/muatik/flask-profiler flask-profiler源代码文档 flask-pro ...

  6. Flask架构管理及特点(重要)

    正文 程序包结构 ——————————————————————————————————flask文件夹结构 其中:app为程序包,Flask程序保存在这个包中migrations文件夹包含数据库迁移脚 ...

  7. flask+sqlite3+echarts2+ajax数据可视化

    前提: 准备Python + Flask+Sqlite3的平台环境(windows系统) 前面一节介绍flask怎么安装了,剩下sqlite3下载后解压,然后环境变量添加解压路径就行了 附加下载地址: ...

  8. flask+sqlite3+echarts2+ajax数据可视化报错:UnicodeDecodeError: 'utf8' codec can't decode byte解决方法

    flask+sqlite3+echarts2+ajax数据可视化报错: UnicodeDecodeError: 'utf8' codec can't decode byte 解决方法: 将 py文件和 ...

  9. Windows下快速安装Flask的一次经历

    前提: 1.已安装python版本(一般都是2.X) 2.已安装easy_install python安装,记得配置Python的环境变量,例如:我的直接在Path上加 G:\Python 验证安装P ...

  10. 使用Flask设计带认证token的RESTful API接口[翻译]

    上一篇文章, 使用python的Flask实现一个RESTful API服务器端  简单地演示了Flask实的现的api服务器,里面提到了因为无状态的原则,没有session cookies,如果访问 ...

随机推荐

  1. Java程序员面试学习资料汇总

    整理了一些关于Java程序员面试的书籍及免费资料. 一.书籍篇1)<Offer来了:Java面试核心知识点精讲(原理篇)>精讲Java面试必需的JVM原理.Java基础.并发编程.数据结构 ...

  2. Spring 的依赖注入应用代替工厂模式

    接口 package FactoryExample; public interface Human { void eat(); void walk(); void show(); } 实现 实现一 p ...

  3. spring多模块之间的调用

    https://blog.csdn.net/tomcat_2014/article/details/50206197?locationNum=5

  4. Python练习题 015:一颗自由落地的球

    [Python练习题 015] 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下.求它在第10次落地时,共经过多少米?第10次反弹多高? ----------------------- ...

  5. 如何安装eclipse

    1.打开浏览器输入网址:http://www.eclipse.org 进入官方 2.(目前我使用windows操作系统),下拉界面选择"windows"后的"64-bit ...

  6. I2C的库函数应用示例

    I2C  Arduino 简单应用举例   例1  多机通信 主机代码:(从编译器串口监视器发送数字1,2,3,4来控制从机的LED亮与灭) 1 #include <Wire.h> 2 v ...

  7. RTKLIB的主要功能

    RTKLIB是全球导航卫星系统GNSS(global navigation satellite system)的标准&精密定位开源程序包,RTKLIB由日本东京海洋大学(Tokyo Unive ...

  8. 第1天 | 12天搞定Python,告诉你有什么用?

    掌握多一门编程语言,多一种选择,多一份机遇,更何况学的是人见人爱,花见花开的Python语言.它目前可占据编程语言排行榜的第3名,是名副其实的"探花郎",无论用它做什么(网络爬虫. ...

  9. Consul 快速入门

    Consul是什么 Consul是一个服务网格(微服务间的 TCP/IP,负责服务之间的网络调用.限流.熔断和监控)解决方案,它是一个一个分布式的,高度可用的系统,而且开发使用都很简便.它提供了一个功 ...

  10. devops-jenkins分布式构建

    1. devops-jenkins分布式构建 1) 点击系统管理 进入节点管理 2) 点击新建节点 3) 进行节点配置在node节点服务器配置,进行java的安装 [root@nginx-backup ...