Http与Websocket的区别
Http1.0和Http1.1的区别
特性 | 短连接(HTTP/1.0 默认) | 长连接 Keep-Alive (HTTP/1.1 默认) |
---|---|---|
TCP连接频率 | 每次请求都新建连接 | 同一个连接复用 |
性能 | 差(高延迟) | 高效(低延迟、少开销) |
应用场景 | 低频通信 | 高频短消息,如页面加载、多资源下载 |
Http与Websocket的区别
特性 | HTTP | WebSocket |
---|---|---|
通信方式 | 单向:请求-响应 | 双向:全双工通信 |
连接保持 | 短连接或长连接(HTTP/1.1 Keep-Alive) | 长连接,连接后持续保持 |
是否实时 | 否,需要轮询或长轮询实现 | 是,实时通信 |
请求发起方 | 只能客户端主动请求 | 客户端和服务端都可以主动发送消息 |
协议层 | 应用层(基于 TCP) | 应用层(基于 TCP) |
建立过程 | 每次通信都重新建立连接 | 初次通过 HTTP 协议握手后升级为 WebSocket 连接 |
数据格式 | 文本(JSON、HTML 等) | 文本或二进制(帧) |
典型应用场景 | 网页请求、接口调用、文件上传等 | 实时聊天、在线游戏、行情推送、IM 通信 |
默认端口 | 80,如果是https是:443 | 80,如果是wss是:443 |