Gunicorn , uWSGI同步异步测试以及应用场景的总结
环境
测试命令
ab -n 10000 -c 100 -r http://127.0.0.1:8888/account/ulogin/3/?wlanuserip=127.0.0.1&wlanacname=&ssid=cmcc&wlanparameter=ffffffffffff #摹拟阻塞的模式下 -n 1000 ab -n 1000 -c 100 -r http://127.0.0.1:8888/account/ulogin/3/?wlanuserip=127.0.0.1&wlanacname=&ssid=cmcc&wlanparameter=ffffffffffff
Gunicorn 同步异步测试利用启动参数
默许模式
gunicorn -b 0.0.0.0:8888 wsgi:application
异步模式
gunicorn -b 0.0.0.0:8888 -k gevent wsgi:application
测试统计数字含义:总时间 qps 毛病数 要求处理无阻塞:
默许模式worker: 27.5s,364,0; 26.3s,261,0 每一个要求增加0.1秒的阻塞以后:
默许模式: 已降落到 不到10的qps
uWSGI同步异步测试利用启动参数
#同步模式 uwsgi --http :8888 --module wsgi --process 1 -l 1000 #异步模式 uwsgi --http :8888 --module wsgi -l 1000 --async 100 --ugreen #原始的阻塞没有甚么提升
测试统计数字含义:总时间,qps,毛病 1般要求:
默许模式: 26s,385,0;26.2s,380,0 每一个要求0.1s阻塞要求下:
默许模式:109s,9,0; 103s,9.6,0
总结在响应时间较短的利用中,uWSGI+django是个不错的组合(测试的结果来看有略微那末1点优势),但是如果有部份阻塞要求 Gunicorn+gevent+django有非常好的效力, 如果阻塞要求比较多的话,还是用tornado重写吧。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |