185、并发和并行的基本概念

并发和并行的区别
  • 并发:一段时间有很多事情要做,强调要做,事情已经发生
    举例:一条道路,有很多车辆等待通过。这是并发
  • 并行(parallel): 互相不干扰的同一时刻做几件事,强调在做
    举例:同一时刻,多条车道,每条车道上同时有多辆互补干扰的在跑,这是并行
    并行是并发的解决办法之一
常见并发的解决途径
方法说明生活举例
队列1. 排队(队列)是一种天然解决并发的方法
2.行成的队列的排队区,就是缓冲区
3.如有多个队列,会有优先队列 例如:Queue模块的类Queue、LifoQueue、PriotityQueue
1.一个打饭窗口,陆续涌入的人,排队,行成的队就是队列
2.整个队列那块地方就是缓冲区
3.有两队人排一个窗口,女士优先,女生队列就是优先队列
争抢争抢是通过锁机制实现,谁抢到资源谁就上锁,排他性的锁,其他人只能等候打饭窗口不实行排队机制,谁抢到谁占用窗口资源,一直等到这个人用完,轮到一下个,这种叫争抢,窗口被占用,其它人无法使用,是一种锁机制
预处理将热点数据提前准备好,提前加载用户需要的数据的思路,缓存常用窗口预先统计热销菜,提前准备好,叫预处理
并行水平扩展思想
1.日常通过多买服务器,多开线程,进程来实现
2.服务器多机、分布式都是并行处理
3.注意:如果线程在单CPU上处理,就不是并行了(属于串行)
开通多个打饭窗口,并行打菜
提速提高单个CPU性能,或单个服务器安装更多CPU,属于垂直扩展思想(将一个CPU当成几个CPU使用,称为虚拟化)提高单个窗口的打菜速率,
消息中间件消息队列服务中用于过滤、区分和根据规则进行转发的程序(解耦和缓冲),可以理解为容纳队列的一个容器,分布式系统中更为常见排队的那块区域,消息中间件详细解释:https://www.cnblogs.com/lifeibai/p/9167701.html
并行和串行哪个更快?

并行和串行哪个更快,主要看处理频率

  • 例如:多辆车通过一车道和多车道,主要看路面情况,如果同样路面情况下,那无疑是并行处理效率更高,但如果并车车道路况不佳,单位时间内的处理总频率小于单车道处理总频率,那就是串行更快。所以串行和并行哪个更快,主要看单位时间内处理数据的频率
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值