django gunicorn 各worker class简单性能测试
版权归作者所有,任何形式转载请联系作者。
作者:petanne(来自豆瓣)
来源:https://www.douban.com/note/564871723/
======================================================================
测试环境:
======================================================================
双核虚拟机centos6.8,内存4G
python==2.7.11
gunicorn==19.6.0
django==1.9.2
tornado==4.3
======================================================================
gunicorn文档中支持的worker class:
======================================================================
sync 默认,使用同步阻塞的网络模型
eventlet - Requires eventlet >= 0.9.7
gevent - Requires gevent >= 0.13
tornado - Requires tornado >= 0.2
gthread - Python 2 requires the futures package to be installed
gaiohttp - Requires Python 3.4 and aiohttp >= 0.21.5
======================================================================
工具:
======================================================================
apache ab
如: ab -c 10 -n 100 -p post.txt http://www.test.com
======================================================================
测试参数:
======================================================================
gunicorn 进程数 -w 16 (与-w 8差距不大,测试机双核)
tornado 进程数16
post 1KB & HTTPResponse('hello world')
-c在保证Failed requests基本为0的前提下取最大值
使用-n为-c的10倍
======================================================================
guincorn运行django项目:
======================================================================
sync
-c 100 -n 1000 Requests per second 120
调整并发量结果仍然在120左右
CPU峰值80
eventlet
-c 50 -n 1000 Requests per second 230
Failed requests在180,即使-c 10,仍然有Failed requests
CPU峰值82
gevent
-c 500 -n 5000 Requests per second 230
Failed requests10以内,稳定
CPU峰值83
tornado
-c 200 -n 4000 Requests per second 250-350
Failed requests10左右,不稳定
但-c加到500,并发降为110,错误数100以内
CPU峰值85
可以看到gevent方式最稳定(推荐),eventlet错误数较多,tornado较高但不稳定
======================================================================
单独tornado项目,以多进程方式启动服务,不使用guincorn
======================================================================
-c 1000 -n 10000 Requests per second 1300-1500
CPU峰值80
======================================================================
以上均为真实测试数据,但由于测试环境及数据等原因,仅供参考
======================================================================
转载于:https://www.cnblogs.com/ExMan/p/10403827.html
django gunicorn 各worker class简单性能测试相关推荐
- javascript worker 多线程 简单示例
javascript worker 多线程 简单示例 项目结构 主线程 index.html <!DOCTYPE html> <html lang="en"> ...
- python读取oracle数据库性能_用python对oracle进行简单性能测试
一.概述 dba在工作中避不开的两个问题,sql使用绑定变量到底会有多少的性能提升?数据库的审计功能如果打开对数据库的性能会产生多大的影响?最近恰好都碰到了,索性做个实验. sql使用绑定变量对性能的 ...
- Mininet系列实验(五):Mininet设置带宽之简单性能测试
Mininet系列实验(五):Mininet设置带宽之简单性能测试 1.实验目的 该实验通过Mininet学习python自定义拓扑实现,可在python脚本文件中设计任意想要的拓扑,简单方便,并通过 ...
- Django实现微信公众号简单自动回复
在上篇博客阿里云部署django实现公网访问已经实现了了django在阿里云上的部署,接下来记录django实现微信公众号简单回复的开发过程,以方便日后查看 内容概要: (1)微信公众号声请 (2)微 ...
- python做性能测试框架_python常用web框架简单性能测试结果分享(包含dja
测了一下django.flask.bottle.tornado 框架本身最简单的性能.对django的性能完全无语了. django.flask.bottle 均使用gunicorn+gevent启动 ...
- ClickHouse之简单性能测试
前面的文章ClickHouse之初步认识已经简单的介绍了ClickHouse,接下来进行简单的性能测试.测试数据来源于美国民用航班的数据,从1987年到2017年,有1.7亿条. 环境: centos ...
- Django中session和cookie简单的使用
一.简单的理解 session和cookie是request下的两个对象,操作他们的值就是在操作字典,设置他们的属性就是调用方法. 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整 ...
- django之十一--开发一个简单的醉得意菜单和人均支付金额查询页面
一.前言 针对搭伙吃饭的点菜,我们时常会从人数和人均金额去考虑一家餐厅的菜单,所以点菜对于大锅饭的伙伴也成了一门学问和难题,本篇文章巧妙的应用代码思想,将实际问题转化为代码问题,例如如下是一个醉得意的 ...
- Django框架简介-初级(简单留言板)
Django框架(综合各方知识) 介绍Django和设计模式 CGI方式开发web MVC 设计模式 web各部分说明 主要内容 结构说明 必要步骤 简单体验留言板 进阶留言板:css和html分离, ...
最新文章
- Oracle 11g dataguard三种模式以及实时查询(Real-time query)功能设置
- 阐述Session加载实体对象的过程
- ThumbnailUtils的使用
- C#简介和异常类总结
- bootstraptable 加载完成回调函数_牛皮了!头一次见有大佬把「JavaScript中的回调函数」详解得如此清晰明了...
- input文本框的readonly和disabled属性区别
- php 单位食堂订餐,职工食堂微信订餐系统 单位饭卡消费系统
- 国科大计算机算法与分析——陈玉福 马菲菲
- 点击链接跳转到微信扫码二维码添加微信好友
- 阿里巴巴图库的使用教程
- 第三周项目4 穷举法
- frameworks/base/core/res/res/values/symbols.xml:3915: error: no definition for declared symbol解决办法
- android 聊天气泡背景图片,关于实现微信聊天气泡里显示图片
- CSR8675项目实战:BlueBrowsing蓝牙播放器
- 水仙花数 matlab,matlab向量运算解决水仙花数问题
- 学习笔记-----浅谈汇编指令CMP运行机制
- 我的世界java边境之地_我的世界:MC人迹罕至的6种“边境之地”,最后1种让人后背发凉!...
- 广州Java培训,疯狂Java如何?谈谈疯狂Java,谈谈李刚
- 哈工大2021秋机器学习期末试题
- PB反编译(Powerbuilder反编译)工具的优缺点对比总结