知行编程网知行编程网  2022-12-13 12:30 知行编程网 隐藏边栏  15 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python高并发怎么解决的相关知识,包括python怎么处理高并发,以及python高并发客户端这些编程知识,希望对大家有参考作用。

python高并发怎么解决

在某个时间段内,数据大量涌入,这就是并发。如果数据量大,就是高并发


高并发的解决方法:


1、队列、缓冲区

假设只有一个窗口,人们陆续涌入食堂,排队取餐是更好的方式

所以,排队(队列)是一种天然解决并发的办法

排队就是把人排成一个队列,先进先出,解决了资源使用问题

形成的队列其实就是一个缓冲区,buffer zone

假设女生优先,每次从这个队里先选女生,就先出来吃饭,这就是优先队列

例如queue模块的类Queue、LifoQueue、PriorityQueue(小顶堆实现)


2、争抢

只开一扇窗,可能没有顺序,就是谁挤进来就给谁做饭

挤到窗口的人占据窗口,直到打到饭菜离开

如果其他人继续打架,就会有一个人占据了窗口,也算是锁住了窗口,窗口不能为他人提供服务。

这是一种锁机制

谁抢到资源就会被加锁,独占锁,其他人只能等待

加扰也是一种高并发的解决方案,但是这样未必好,因为可能有人抢的时间久了


3、预处理

如果排长队的原因是大家点餐等了很久,因为没有食物吃,需要现做现做,不留食物就锁窗

食堂可以提前统计大多数人喜欢的菜品,80%的人气菜品提前准备,保证供应,20%的冷门菜品现做现做

这样,即使大部分人锁上了窗户,也会迅速打饭走人,迅速释放窗户

一种预先加载用户需要的数据的方式,预处理思路,常用于缓存

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享