测了一下django、flask、bottle、tornado 框架本身最简单的性能。对django的性能完全无语了。

django、flask、bottle 均使用gunicorn+gevent启动,单进程,并且关闭DEBUG,请求均只返回一个字符串ok。

tornado直接自己启动,其他内容一致。

测试软件为 siege,测试os为cenos6 64位,测试命令为:

代码如下:

siege -c 100 -r 100 -b http://127.0.0.1:5000/

django测试结果为:

代码如下:

Transactions: 10000 hits

Availability: 100.00 %

Elapsed time: 18.51 secs

Data transferred: 0.02 MB

Response time: 0.18 secs

Transaction rate: 540.25 trans/sec

Throughput: 0.00 MB/sec

Concurrency: 99.35

Successful transactions: 10000

Failed transactions: 0

Longest transaction: 0.30

Shortest transaction: 0.12

django(去掉所有middleware)测试结果为:

代码如下:

Transactions: 10000 hits

Availability: 100.00 %

Elapsed time: 12.97 secs

Data transferred: 0.02 MB

Response time: 0.13 secs

Transaction rate: 771.01 trans/sec

Throughput: 0.00 MB/sec

Concurrency: 99.41

Successful transactions: 10000

Failed transactions: 0

Longest transaction: 0.28

Shortest transaction: 0.12

flask测试结果为:

代码如下:

Transactions: 10000 hits

Availability: 100.00 %

Elapsed time: 5.47 secs

Data transferred: 0.02 MB

Response time: 0.05 secs

Transaction rate: 1828.15 trans/sec

Throughput: 0.00 MB/sec

Concurrency: 96.25

Successful transactions: 10000

Failed transactions: 0

Longest transaction: 0.11

Shortest transaction: 0.00

bottle测试结果为:

代码如下:

Transactions: 10000 hits

Availability: 100.00 %

Elapsed time: 4.55 secs

Data transferred: 0.02 MB

Response time: 0.04 secs

Transaction rate: 2197.80 trans/sec

Throughput: 0.00 MB/sec

Concurrency: 96.81

Successful transactions: 10000

Failed transactions: 0

Longest transaction: 0.09

Shortest transaction: 0.00

tornado测试结果为:

代码如下:

Transactions: 10000 hits

Availability: 100.00 %

Elapsed time: 7.06 secs

Data transferred: 0.02 MB

Response time: 0.07 secs

Transaction rate: 1416.43 trans/sec

Throughput: 0.00 MB/sec

Concurrency: 99.51

Successful transactions: 10000

Failed transactions: 0

Longest transaction: 0.09

Shortest transaction: 0.01

可见纯框架自身的性能为:

代码如下:

bottle flask tornado django

结合实际使用:

tornado 使用了异步驱动,所以在写业务代码时如果稍有同步耗时性能就会急剧下降;

bottle需要自己实现的东西太多,加上之后不知道性能会怎样;

flask性能稍微差点,但周边的支持已经很丰富了;

django就不说了,性能已经没法看了,唯一的好处就是开发的架子都已经搭好,开发速度快很多

因为最近正在为一个项目选型发愁,所以就测了一下,记录在此吧。

PS: 2014-6-23 使用 centos6 64位 重新进行了测试,得出与生产环境更匹配的结果,并修改了文章。

python做性能测试框架_python常用web框架简单性能测试结果分享(包含dja相关推荐

  1. python django flask介绍_Python开发WEB框架Flask详细介绍

    Flask简介 Flask是一个相对于Django而言轻量级的Web框架. 和Django大包大揽不同,Flask建立于一系列的开源软件包之上,这其中 最主要的是WSGI应用开发库Werkzeug和模 ...

  2. pyramid框架_Python Pyramid Web框架简介

    pyramid框架 在这个由四部分组成的系列文章的第一篇文章中,比较了不同的Python Web框架,我解释了如何在Flask Web框架中创建"待办事项列表" Web应用程序. ...

  3. python增删改查的框架_python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查...

    Django中的ORM简介 ORM概念:对象关系映射(Object Relational Mapping,简称ORM): 用面向对象的方式描述数据库,去操作数据库,甚至可以达到不用编写SQL语句就能够 ...

  4. python做cae库_python常用模块-OS模块

    importos__file__:指当前文件,带有路径的 D:/svn_auto3/test_case1/test1.py(注意这里的斜杠,和abspath的区别就是这里)#路径操作 >> ...

  5. python做性能测试框架_python api 测试框架

    python常用框架 Django: Python Web应用开发框架 Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响.Django是走大而全的方向,它最出名的是 ...

  6. Python 常用Web框架的比较

    从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python Web应用开发框架     D ...

  7. python 爬虫框架_Python常用的几个高效率的爬虫框架

    1.Scrapy Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中.用这个框架可以轻松爬下来如亚马逊商品信息之类的数 ...

  8. python的orm框架_Python 常用的ORM框架简介

    ORM概念 ORM(Object Ralational Mapping,对象关系映射)用来把对象模型表示的对象映射到基于S Q L 的关系模型数据库结构中去.这样,我们在具体的操作实体对象的时候,就不 ...

  9. python flask框架是什么_Python三大web框架分别是什么 哪个更好

    展开全部 [导读]目前,Python比较2113火的三大5261web框架有Django.Flask和Tornado,要论这三个Web框架哪个更好4102的话,建议一点1653,Django帮我们事先 ...

最新文章

  1. 第一次软工作业展示——潘学
  2. 丰巢快递将强制收费引网友吐槽,全国第一驿站表示继续免费
  3. 快播王欣再做视频;Apple Watch 非法雇佣学生;ofo 进军电单车 | 极客头条
  4. .net 初学者。学习笔记 [获取varchar32主键的最大ID值]
  5. Android开发教程 - 使用Data Binding Android Studio不能正常生成相关类/方法的解决办法...
  6. MSSQL备份及数据迁移
  7. 微信飞机大战小游戏制作分享(上集)含素材视频教程
  8. centos安装aria2c_CentOS安装aria2+yaaw实现离线下载
  9. css让文本不会被选中,鼠标变小手
  10. 【工具】(一):关于Sublime Text 3,主题插件Boxy Theme安装问题,已解决
  11. netware php_在NetWare上搭建MySQL数据库_MySQL
  12. DSN格式转SCH格式
  13. 作为一个面试官,我是怎么来面试测试人员的?
  14. [BJDCTF 2nd] 燕言燕语-y1ng
  15. 网站优化推广怎么做?
  16. 【关于单片机的N多问题】关于单片机的N多问题
  17. vue 快速入门指南(一)
  18. 丁磊进退之道《前程密码》
  19. iwconfig 安装_linux下安装无线驱动
  20. 联想台式机linux系统安装教程,商用台式一键恢复软件各版本使用介绍(适用于现有上市机型)...

热门文章

  1. 联想微型计算机620S,小巧、精致!联想ideacenter 620s远不止如此
  2. Google Fonts 谷歌字体的使用
  3. android4.0 U盘热插拔后挂载不上bug解决
  4. Appinum 自动化测试利器入门
  5. Docker 的 镜像的常用命令
  6. homeassistant
  7. 微积分的本质(六):多元微积分入门——隐函数求导
  8. 多模态机器学习综述翻译(转载)
  9. c语言指数爆炸月球,指数爆炸:一张纸对折103次后,将填满整个宇宙?
  10. Maven——Maven核心概念——史上最烂系列