美文网首页
「Python并发编程-4」高并发模拟与处理

「Python并发编程-4」高并发模拟与处理

作者: 言淦 | 来源:发表于2018-09-29 16:38 被阅读0次

Python高并发我觉得可以分为两个角度来讨论,第一是如何模拟高并发,跟压力测试挂钩;第二是我们的程序如何承受高并发。

一、如何模拟高并发?
原理:多线程、多进程、协程

高并发的一些指标
PV,TPS,QPS,RPS

压力测试工具:Locust、wrk等

wrk压力测试工具介绍:
http://zjumty.iteye.com/blog/2221040

二、如何承受高并发?
1、从redis获取数据。redis读取速度快,所以在短时间内能承受更多的连接数

2、使用gunicorn的多进程模式,通过指定 -w (进程数)这个参数。

  1. 使用gunicorn的异步模式(没实践过)
    https://segmentfault.com/q/1010000004532745

4.使用gunicorn+nginx,套上一层nginx据说可以起到负载均衡等效果(具体我也不了解)

5.使用一些异步框架
5.1 sanic框架,语法跟flask非常相似,但是性能优于flask,使用wrk进行压测,其单进程与gunicorn开5进程的效果差不多。
https://segmentfault.com/a/1190000012951052

5.2 gevent框架
https://blog.csdn.net/qq_38934189/article/details/80591463

5.3 Tornado框架

6.Linux的多路复用(跟epoll相关,这个更不清楚)

参考:
flask如何处理并发
【LocustPlus序】漫谈服务端性能测试

上一篇:「Python并发编程-3」多进程实现
下一篇:「Python异步编程-1」总览全局

相关文章

网友评论

      本文标题:「Python并发编程-4」高并发模拟与处理

      本文链接:https://www.haomeiwen.com/subject/jduuoftx.html