相关概念
什么是进程、线程、协程
什么是多进程、多线程
同步阻塞模型
异步非阻塞模型
PHP并发编程实践
进程是一个“执行中的程序”
image.png运行 就绪 阻塞
image.png是小于等于处理器的数目,因为一个处理器只能处理一个。。
image.png万事俱备 只欠东风。
image.png手机可以先把一个app放到后台,不看了。。。这就是阻塞,因为在等待唤醒。
image.png image.png image.png image.png游泳的准备下水
image.png替补准备上场
image.png在场上,但是累了,跑不动了。
image.png image.png image.png是进程的一部分。
image.png线程相当于是进程的一个寄生虫。
image.png image.png image.png一个程序就是一个进程,一个进程可能有多个线程。
image.png image.png image.png image.png image.png image.png有点类似于轻量级的线程。
程序员调试的时候,可以用一个程序来调用另一个程序,这个就是协程。
协程的调用,完全是由用户来控制的。
而线程是由操作系统来控制的。
边玩游戏,边听歌。
边玩王者荣耀,边听歌。
多开一个进程,多分配一分资源,进程间通讯不方便。
image.png image.png多进程单线程:多个人每个人在自己的桌子上吃菜。
image.png image.png image.png image.png image.png image.png image.pnglinux可以在一个进程里面,维持1024个链接。
只有一个会命中。。。100w里面只会有一个,
无需调用,无需轮询。
image.png image.png image.png image.png image.png image.png image.png不需要做reactor扩展。
image.png image.png image.png image.png比如说数据写入需要50毫秒,邮件发送需要50毫秒,短信发送50毫秒,,总共105毫秒。
image.png image.png先告诉用户注册成功,然后在用离线程序去调用数据,再发送邮件和短信。
image.png订单和库存 解耦。。
image.png先不管库存。。
image.png image.png假如秒杀只允许10个人,那么我的队列只允许10个人。
image.png image.png image.png写入队列之后,是立马返回的,用户是没有感知的。
image.png image.png image.png
网友评论