WebSocket与SSE

WebSocket WebSocket连接建立过程 sequenceDiagram note over Client,Server: TCP三次握手(传输层) Client ->> Server: SYN Server ->> Client: SYNC+ACK Client ->> Server: ACK note over Client,Server: HTTP请求 转换为WebSocket协议(应用层) Client ->> Server: HTTP GET请求<br>GET HTTP1.1<br>Connection:Upgrade<br>Upgrade:websocket<br>Sec-Websocket-Key: 字符串.base64() note over Server: Sec-Websocket-Accept=fn(字符串) Server ->> Client: HTTP 101响应<br>HTTP1.1 101 Switching Protocals<br>Sec-Websocket-Accept:base64码<br>Upgrade:websocket<br>Connection:Upgrade note over Client: check(fn(base64(字符串))=Sec-Websocket-Accept) note over Client,Server: Websocket连接成功 基于TCP长连接<br>(HTTP通常返回消息后就断开了 但是ws没断开) Server ->> Client: Websocket数据帧 Server ->> Client: Websocket数据帧 Client ->> Server: Websocket数据帧 Client --> Server: ...... SSE llm chatbot 挨个吐字的过程展示 ...

2024/07/05 · 3 分钟 · 1073 字 · Aris

Proactor 与 Reactor

Reactor模式用于同步I/O,Proactor运用于异步I/O操作 阻塞模型 同步和异步 针对应用程序和内核交互而言 同步:用户进程触发I/O操作,等待或轮询去查看I/O操作是否就绪 异步:用户进程触发I/O操作后,去做自己的事情,I/O操作完成后给予通知 阻塞和非阻塞 进程在访问数据的时候,根据I/O操作的就绪状态采取不同的方式,即读取或写入操作函数的实现方式 ...

2019/12/08 · 6 分钟 · 2509 字 · Aris

计算机网络

计算机网络 OSI模型 应用层(数据):确定进程之间通信的性质以满足用户需要以及提供网络与用户应用 表示层(数据):主要解决拥护信息的语法表示问题,如加密解密 会话层(数据):提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制,如服务器验证用户登录便是由会话层完成的 传输层(段):实现网络不同主机上用户进程之间的数据通信,可靠与不可靠的传输,传输层的错误检测,流量控制等 网络层(包):提供逻辑地址(IP)、选择最佳路径,数据从源端到目的端的传输 数据链路层(帧):将上层数据封装成帧,用 MAC 地址访问媒介,错误检与修正 物理层(比特流):设备之间比特流的传输,物理接口,电气特性等 在TCP/IP五层中,123层对应应用层 ...

2019/07/05 · 23 分钟 · 11491 字 · Aris