网络模型分析

# 用户空间和内核空间

网络模型分析_第1张图片

网络模型分析_第2张图片

# 阻塞IO

网络模型分析_第3张图片

# 非阻塞IO

网络模型分析_第4张图片

# IO多路复用

网络模型分析_第5张图片

网络模型分析_第6张图片

网络模型分析_第7张图片

IO多路复用-select

内核中遍历找到就绪的fd并保留,不匹配的就置为0,

以上的操作重复,知道所有的FD都完成

IO多路复用-poll

网络模型分析_第8张图片

IO多路复用-epoll

网络模型分析_第9张图片

IO多路复用-事件通知机制

网络模型分析_第10张图片

很多进程都要用同一份fd数据,但是只需要一个进程把数据读到用户空间,其他进程直接用就行了。惊群的话就会导致需要这个数据的所有进程都被唤醒来执行这个读取操作,势必造成cpu资源的浪费

IO多路复用-web服务流程

网络模型分析_第11张图片

# 信号驱动IO

网络模型分析_第12张图片

# 异步IO

网络模型分析_第13张图片

网络模型分析_第14张图片

# Redis网络模型

网络模型分析_第15张图片

网络模型分析_第16张图片

网络模型分析_第17张图片

你可能感兴趣的:(interview,网络,redis)