1. 概述
- 有些概念, 老是弄不清楚
- 同步异步
- 阻塞非阻塞
2. 准备
- 场景
- 角色
- client
- 发起请求
- 接受请求
- server
- 接受请求
- 执行操作
- 返回响应
- 行为
- 大致是一个 C/S 模式的模型
3. 阻塞 & 非阻塞
- 概述
- 对 客户端 行为的描述
- 行为
- 阻塞
- client 发出请求
- client 原地等待 server 处理完
- client 接到 server 响应, 继续前进
- 非阻塞
- client 发出请求
- 当然多数时候, 要确认 server 收到了请求, 简单考虑的话, 可以先不提
- client 继续前进
- 关注点
- client 向 server 发出请求后的行为模式
4. 同步 & 异步
- 概述
- 对 服务端 行为的描述
- 行为
- 同步
- server 接受请求
- server 处理请求
- server 返回响应
- 异步
- server 接受请求
- server 返回响应
- 收到请求
- server 处理请求
- server 返回响应
- 处理完成
- 关注点
- server 在收到请求后的行为模式
- 其他
- server 处理完请求, client 有多重方式知道 处理完成
- client 轮询
- client 主动
- 反复询问 server 情况
- client 监听
- server 主动
- 处理完后立即通知 client
5. 组合
- 阻塞同步
- 最常见的模型
- 最简单
- 阻塞异步
- 有点二逼的模型
- client 明明可继续前进, 非要傻等到 server 的处理完成
- 非阻塞同步
- 有点二逼的模型
- server 命名可以返回后继续接受其他请求, 但还是在哪里阻塞
- 非阻塞异步
- 常见的模型
- 最高效
转载于:https://www.cnblogs.com/xy14/p/11279956.html