python echo服务器_python常用框架 echo server 的测试
测试方法
用c编写一个客服端 client.c,使用多线程去访问server,计算每秒访问的次数。
client.c 的用法如下:
client [-e echo counts per conn] [-c conn count per threads] [-t threads count] [-p port] [-f filename to load] serverip
测试服务器代码
测试结果
c ./server_libev 3100
Throughput: 214467.02 [reqests/sec], errors: 0
Throughput: 220804.31 [reqests/sec], errors: 0
Throughput: 220903.15 [reqests/sec], errors: 0
Throughput: 219720.81 [reqests/sec], errors: 0
Throughput: 225590.31 [reqests/sec], errors: 0
python server_epoll.py 3900
Throughput: 108003.46 [reqests/sec], errors: 0
Throughput: 108214.69 [reqests/sec], errors: 0
Throughput: 108591.34 [reqests/sec], errors: 0
Throughput: 110309.58 [reqests/sec], errors: 0
Throughput: 109282.61 [reqests/sec], errors: 0
python3 server_epoll.py 4000
Throughput: 115253.85 [reqests/sec], errors: 0
Throughput: 115190.78 [reqests/sec], errors: 0
Throughput: 116379.82 [reqests/sec], errors: 0
Throughput: 114897.09 [reqests/sec], errors: 0
Throughput: 112700.61 [reqests/sec], errors: 0
上面的服务器每次连接没有建立协程。
python server_gevent.py 3200
Throughput: 51046.04 [reqests/sec], errors: 0
Throughput: 52686.71 [reqests/sec], errors: 0
Throughput: 51715.62 [reqests/sec], errors: 0
Throughput: 51969.31 [reqests/sec], errors: 0
Throughput: 51036.19 [reqests/sec], errors: 0
python3 server_gevent3.py 3300
Throughput: 85031.97 [reqests/sec], errors: 0
Throughput: 88128.32 [reqests/sec], errors: 0
Throughput: 82256.00 [reqests/sec], errors: 0
Throughput: 81709.07 [reqests/sec], errors: 0
Throughput: 86061.96 [reqests/sec], errors: 0
python server_tornado.py 3400
Throughput: 52252.68 [reqests/sec], errors: 0
Throughput: 52748.79 [reqests/sec], errors: 0
Throughput: 51505.06 [reqests/sec], errors: 0
Throughput: 53063.38 [reqests/sec], errors: 0
Throughput: 51842.82 [reqests/sec], errors: 0
python3 server_tornado.py 3500
Throughput: 47059.97 [reqests/sec], errors: 0
Throughput: 45552.64 [reqests/sec], errors: 0
Throughput: 46548.64 [reqests/sec], errors: 0
Throughput: 46035.63 [reqests/sec], errors: 0
Throughput: 45992.27 [reqests/sec], errors: 0
python server_twisted.py 3600
Throughput: 43411.09 [reqests/sec], errors: 0
Throughput: 42923.03 [reqests/sec], errors: 0
Throughput: 43965.73 [reqests/sec], errors: 0
Throughput: 44171.67 [reqests/sec], errors: 0
Throughput: 43845.68 [reqests/sec], errors: 0
python3 server_twisted.py 3700
Throughput: 40452.62 [reqests/sec], errors: 0
Throughput: 41188.00 [reqests/sec], errors: 0
Throughput: 40992.47 [reqests/sec], errors: 0
Throughput: 40710.83 [reqests/sec], errors: 0
Throughput: 41069.76 [reqests/sec], errors: 0
python3 server_asyncio.py 3800
Throughput: 58291.01 [reqests/sec], errors: 0
Throughput: 58510.31 [reqests/sec], errors: 0
Throughput: 59923.10 [reqests/sec], errors: 0
Throughput: 59477.78 [reqests/sec], errors: 0
Throughput: 59639.14 [reqests/sec], errors: 0
结论
gevent+python3 性能最优。
python echo服务器_python常用框架 echo server 的测试相关推荐
- python api开发框架_python api框架
python常用框架 Django: Python Web应用开发框架 Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响.Django是走大而全的方向,它最出名的是 ...
- python多人游戏服务器_Python在线多人游戏开发教程
python多人游戏服务器 This Python online game tutorial from Tech with Tim will show you how to code a scalea ...
- python 局域网服务器_Python一秒搭建ftp服务器,帮助你在局域网共享文件
"老板 来碗面" "要啥面?" "内牛满面.." 最近项目上的事情弄得人心累,本来是帮着兄弟项目写套入口代码,搞着搞着就被拉着入坑了.搞开发 ...
- python dcf估值_Python 常用模块
本节内容 模块介绍 os 模块 sys 模块 time & datetime模块 random 模块 json & picle shutil 模块 shelve 模块 xml 模块 c ...
- python字符串类库_Python 常用类库
python除了关键字(keywords)和内置的类型和函数(builtins),更多的功能是通过libraries(即modules)来提供的. 常用的libraries(modules)如下: 1 ...
- python app服务器_Python应用02 Python服务器进化
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! **注意,在Python 3.x中,BaseHTTPServer, SimpleH ...
- python socket服务器_python网络编程学习笔记(三):socket网络服务器
1.TCP连接的建立方法 客户端在建立一个TCP连接时一般需要两步,而服务器的这个过程需要四步,具体见下面的比较.步骤 TCP客户端 TCP服务器 第一步 建立socket对象 建立socket对象 ...
- python django开发框架_Python Django 框架开发
参考文档: http://python.usyiyi.cn/django_182/intro/tutorial01.html #Django 1.8.2 文档 http://www.ziqiangxu ...
- python爬虫对比_Python六大框架对比,Web2py略胜一筹|python爬虫|python入门|python教程...
https://www.xin3721.com/eschool/pythonxin3721/ Python是一门动态.面向对象语言.其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的 ...
最新文章
- Mongodb的索引操作
- spring中文参考手册-核心技术_ioc
- 让携号转网不再难!但你得了解这几大限制
- 假如你有20万用来创业,你最想进入什么行业?
- 【浙江大学PAT真题练习乙级】1008 数组元素循环右移问题 (20分)真题解析
- Maven中配置redis时有红色感叹号
- 2021-08-05查询排序分页语句
- 单身10年!最孤单水蛙“罗密欧”有望“脱单”
- CMD恶搞命令集,假装自己是黑客
- CC2530之OLED12864程序详解
- 机器人领域SCI期刊总结
- 傲腾这么厉害?QLC闪存笑了!
- 浙大计算机跨专业考研心路历程记录
- java记录访问次数_使用java中的session来记录访问次数
- OpenCV每日函数 图像过滤模块 (6) erode腐蚀函数
- 嵌入式的可移植性和可复用性
- 南华大学计算机科学学院,南华大学计算机科学与技术学院研究生导师简介-万亚平...
- dashboard的安装使用
- Swift4打造今日头条视频实战视频教程
- smartctl获取raid卡下intel ssd寿命
热门文章
- mysql 全局select授权_MySQL的用户设置与授权
- Error creating bean with name ‘userController‘: Unsatisfied dependency expre
- android获得一个view的高度,Android ViewTreeObserver使用总结及获得View高度的几种方法...
- 中国人工智能产业发展联盟成立 360任副理事长单位
- iOS之设置用户头像的圆角
- 整合框架过程记录日志
- [翻译]01-ASP.NET MVC 3介绍
- 超级日志服务器-Splunk
- 这些工具你利用好了吗?
- FileUpload 控件 禁止手动输入