webSocket 协议可以为网站和应用提供真正的双向通信, 具有控制开销, 保持连接状态, 更强实时性, 更好的压缩效果等优点, 是当下低延时应用最常采用的一种技术协议. 为了更好的满足客户在实时通讯场景下的加速需求, 目前阿里云全站加速 DCDN 已经全面支持 WebSocket 协议, 以此确保更加极致的客户体验.
WebSocket 的优势与应用
html5 定义 的 WebSocket 协议是基于 TCP 的一种新的网络协议. 它实现了浏览器与服务器全双工 (full-duplex) 通信, 即允许服务器主动发送信息给客户端. 因此, WebSocket 使得客户端和服务器之间的数据交换变得更加简单, 允许服务端主动向客户端推送数据. 在 WebSocket API 中, 浏览器和服务器只需要完成一次握手, 两者之间就直接可以创建持久性的连接, 并进行双向数据传输.
WebSocket 能更好的节省服务器资源和带宽, 并且能够更实时地进行通讯, 它的优势:
• 较少的控制开销. 在连接创建后, 服务器和客户端之间交换数据时, 用于协议控制的数据包头部相对较小.
• 更强的实时性. 由于协议是全双工的, 所以服务器可以随时主动给客户端下发数据. 相对于 HTTP 请求需要等待客户端发起请求服务端才能响应, 延迟明显更少; 即使是和 Comet 等类似的长轮询比较, 其也能在短时间内更多次地传递数据.
• 保持连接状态. 与 HTTP 不同的是, Websocket 需要先创建连接, 这就使得其成为一种有状态的协议, 之后通信时可以省略部分状态信息. 而 HTTP 请求可能需要在每个请求都携带状态信息(如身份认证等).
• 更好的二进制支持. Websocket 定义了二进制帧, 相对 HTTP, 可以更轻松地处理二进制内容.
• 可以支持扩展. Websocket 定义了扩展, 用户可以扩展协议, 实现部分自定义的子协议.
• 更好的压缩效果. 相对于 HTTP 压缩, Websocket 在适当的扩展支持下, 可以沿用之前内容的上下文, 在传递类似的数据时, 可以显著地提高压缩率.
WebSocket 主要用于解决以下几个问题:
一, 在线聊天速度慢, 断开连接较快, 不能更好的保持业务通讯
二, 网页通讯信息更安全, 连接更稳定
三, 提供更高效的网页通讯
四, 网络抖动带来的连接时断时续问题
五, 访问打不开网页, 需要刷新页面
六, 同时在线人数多, 如何实时推送所有用户
七, 服务端支持 WebSocket 协议
八, 如何降低带宽, 保证成本
总之, 如果你的应用需要提供多个用户相互交流, 或者展示服务器端经常变动的数据, 就十分需要使用 WebSocket 技术.
阿里云 DCDN 的 WebSocket 应用场景
阿里云 CDN 服务全球 30 多万家客户, 涵盖视频, 教育, 政府, 游戏, 金融, 社交, 电商等各大行业场景, 其中有几个典型的业务场景, 可以利用平台技术优势, 更好地解决实时通讯业务需求. DCDN 已经支持 WebSocket 协议, 可以应用在以下场景之中:
场景一: 弹幕
弹幕的流程是终端用户 A 在自己的客户端广播了一条信息, 这条信息需要在与其他 N 个用户端发送的弹幕信息一并展示在 A 这边. 它需要马上显示到屏幕上, 对实时性要求极高. 在今年 S8 赛事总决赛中, 虎牙直播就采用全站加速 WebSocket 协议, 更从容地应对 2000 万在线超高并发流量下更实时, 更猛烈的互动考验.
场景二: 在线教育
在线教育跨越了时空的限制, 学生与老师进行一对多 / 一对一的在线授课, 老师在客户端内编写的笔记, 大纲, 白板信息等信息, 需要实时推送至多个学生的客户端, 同时在课堂上, 通话, 文字聊天, 实时解题等交互的实时性要求非常高, 需要通过 WebSocket 协议来完成.
场景三: 金融产品实时信息查询
股票价格瞬息万变, 如果显示数据不及时, 很有可能会影响用户的收益. 需要通过 WebSocket 协议流式更新数据变化, 将价格实时推送至世界各地的客户端, 方便交易员迅速做出交易判断.
场景四: 体育实况更新
由于全世界体育爱好者数量众多, 比赛实况成为他们最为关心的热点. 如果你是提供体育新闻类服务, WebSocket 能够助力你的用户降低延时, 获得实时的更新.
场景五: 视频会议和互动直播
尽管视频会议并不能代替和真人相见, 但是应用场景众多. 而互动直播和视频会议中的连麦的服务对低延时的要求非常高. 试想主播或者你的主管说了一句话后, 你要 10 秒后才能听到, 那你们是根本无法进行正常交流的 .WebSocket 可以帮助两端或多端接入会议 / 直播的用户实时传递信息.
全站加速 DCDN -- 更极致用户体验
阿里云自主研发的全站加速产品 (Dynamic Route for Content Delivery Network) 是融合了动态加速和静态加速技术的 CDN 产品, 除了全面支持 WebSocket 协议之外, 该产品一站式解决了页面动静态资源混杂, 跨运营商, 网络不稳定, 单线源站, 突发流量, 网络拥塞等诸多因素导致的响应慢, 丢包, 服务不稳定的问题, 提升全站性能和用户体验.
全站加速工作原理:
全站加速构建于阿里云 CDN 平台之上, 它的服务优势是:
应用广泛: 针对电商, 社交, 政企, 游戏, 金融等动静内容混合场景下的性能及稳定性需求, 可以确保用户体验, 防止用户流失. 更多场景解读
便捷接入: 站点无需动静态内容拆分加速, 一键接入解决网络拥塞, 提高访问成功率, 接入指南
智能极速: 加速方案更智能, 多种分发策略, 边缘缓存, 最优路由, 压缩传输, 访问效率提升 60%
稳定加速: 1500 + 全球节点充足保障, 120T 带宽能力, 六大洲覆盖, 国内主流运营商支持, 了解节点分布
内容安全: 全链路加密传输, 集成多种访问控制方式, 增强源站防护能力, 为文件, 视频的传输保驾护航, 了解更多产品文档
三步即可快速上手全站加速
请按步骤接入:
开通全站加速服务
添加加速域名
配置 CNAME, 服务生效
如何购买全站加速
全站加速目前采用两种计费方式: 按量付费 (后付费, 详见全站加速计费项) 和预付费资源包.
性能提升刻不容缓, 马上开通全站加速
来源: https://yq.aliyun.com/articles/686839