全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

WebSocket和WebSocket Secure协议概述

最近更新时间:2024-01-02 14:51:09

什么是WebSocket

WebSocket 是HTML5下的一种标准协议,用于在客户端和服务端之间进行双向数据传输(本质是基于 TCP 的协议)。它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯的目的。

虽然在建立握手时,数据是通过HTTP传输的,但握手建立之后,WebSocket基于已经建立的TCP连接,客户端和服务端可以进行双向数据传输,都能主动向对方发送或接收信息。

Websocket和HTTP的关系:

相同点:

  1. 两种协议都是基于TCP的可靠传输协议

  2. 两种都是应用层协议

不同点:

  1. Websocket是双向通信协议,服务端可以主动向服务端发送信息,不依赖客户端的请求

  2. HTTP是单向的,只有收到客户端请求后,服务端才向客户端发送信息

  3. Websocket是需要客户端和服务端握手建立连接,握手成功后,可实现客户端和服务端的双向通信

  4. HTTP是客户端向服务端发起的连接,服务端事先不感知,只能是单向通信

WebSocket Secure

为什么需要Websocket

HTTP虽然可以实现客户端和服务端的信息传递,满足大多数场景的需求,但HTTP是一种单向通信协议,服务器每一次的数据传输,都需要有客户端HTTP请求。随着信息技术的发展,在一些重要的应用场景中,需要服务端有能力主动对客户端进行信息的实时推送(例如直播弹幕、在线聊天、协同办公等),如果依靠HTTP协议,客户端想要获取服务端的最新信息,需要通过轮询的方式不断发起HTTP请求,而HTTP的请求报文中,可能大部分报文长度由头部占用,有效数据并不多。由此带来了两个问题,一是通信效率低下;二是对带宽资源的侵占,造成浪费。

根据业务场景的不同,可以选择WebSocket协议,它实现了客户端和服务端的全双工通信,具备以下优势:

  1. 实时性高,服务端有更新时,可以主动将信息发送给客户端

  2. 因为减少了HTTP协议由客户端发起的轮询请求,服务的带宽开销减少,实现降本增效。

如何在金山云ALB开启Websocket和Websocket Secure

HTTP监听器默认支持Websocket,不需要特殊配置。

HTTPS监听器默认支持Websocket Secure,不需要特殊配置。

支持的地域

目前在ALB开放的区域都已支持WebSocket和Websocket Secure。

如何收费

金山云不针对WebSocket和Websocket Secure收取额外费用。

文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈