阿里云全站加速DCDN全面支持WebSocket协议
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带宽能力,六大洲覆盖,国内主流运营商支持, 了解节点分布
内容安全:全链路加密传输,集成多种访问控制方式,增强源站防护能力,为文件、视频的传输保驾护航,了解更多产品文档
三步即可快速上手全站加速
请按步骤接入:
如何购买全站加速
全站加速目前采用两种计费方式:按量付费(后付费,详见全站加速计费项)和预付费资源包。
性能提升刻不容缓,马上开通全站加速
原文链接
更多技术干货 请关注阿里云云栖社区微信号 :yunqiinsight
阿里云全站加速DCDN全面支持WebSocket协议的更多相关文章
- Delphi阿里云邮件推送【支持单一发信、邮件批量发送和获取指定条件下的发送数据】
作者QQ:(648437169) 点击下载➨Delphi阿里云邮件推送 阿里云api文档 [Delphi阿里云邮件推送]支持SingleSendMail(单一发信接口). ...
- Delphi阿里云对象存储OSS【支持上传文件、下载文件、删除文件、创建目录、删除目录、Bucket操作等】
作者QQ:(648437169) 点击下载➨Delphi阿里云对象存储OSS 阿里云api文档 [Delphi阿里云对象存储OSS]支持 获取Bucket列表.设置Bucket ...
- 阿里云负载不支持 WebSocket 协议与 WSS 和 Nginx 配置问题
WebSocket 是 HTML5 下一种新的协议.它实现了浏览器与服务器全双工通信,能更好的节省服务器资源和带宽并达到实时通讯的目的.它与HTTP一样通过已建立的TCP连接来传输数据,但是它和HTT ...
- 使用99元一年的256MB高性能阿里云Redis加速Discuz论坛
介绍 Discuz是一个常见的论坛,支持使用Redis来对论坛进行加速访问,对于访问量比较大的论坛能够取到很好的作用,本文介绍如何使用阿里云高性价比256MBRedis来加速该论坛. 阿里云Redis ...
- 阿里云maven加速和docker加速
maven加速 maven仓库用过的人都知道,国内有多么的悲催.还好有比较好用的镜像可以使用,尽快记录下来.速度提升100倍. http://maven.aliyun.com/nexus/#view- ...
- 阿里云 rds python sdk不支持python3处理
阿里云文档中心的python版本aliyun-python-sdk-rds不支持python3处理 问题:默认情况下文档中心的python版本只支持python2,不兼容python3版本 需要稍微修 ...
- 关于STM32F103+ESP8266+阿里云过程之修改SDK支持UART和SmartConfig(四)
设备上报状态到阿里云成功之后,还要接受来至云端下发的命令,如APP.在ESP8266接受到数据之后可将数据先进行解析,再通过自定义协议与STM32进行串口通讯,也可以将接收到的数据中的信息直接传输到U ...
- PHP实现阿里云OSS文件上传(支持批量)
上传文件至阿里云OSS,整体逻辑是,文件先临时上传到本地,然后在上传到OSS,最后删除本地的临时文件(也可以不删,具体看自己的业务需求),具体实现流程如下: 1.下载阿里云OSS对象上传SDK(P ...
- composer阿里云短信服务不支持传参为数值--为2017年短信接口,2018阿里云有更新http://www.cnblogs.com/q1104460935/p/8916096.html
composer 阿里云短信服务使用 xuying/aliyun_mns 更新到2017年初,不再更新 ){;, ); }; } ; }; }; }} 以下为发送成功返回对象 object(A ...
随机推荐
- Delphi中的Sender:TObject对象解析转载
https://blog.csdn.net/jl_tiny/article/details/24376661 Delphi中的Sender:TObject对象解析 procedure TForm1.B ...
- Dubbo 3.0 预览版解读,6到飞起~
, false).start(); ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new St ...
- 来个我一起学习Python把!!!(新手共同努力)
<初识Python> 大家好,让我们一起来学习Python,因本人也是个新手但我会把我所学的东西分享出来,并记录自己的经验学习过程,不单单是分享代码,会详细的讲解,如有错误地方希望大家指点 ...
- C 删除字符串中某个指定的字符
#include <stdio.h> char *del_char(char *str, char ch) { unsigned char i=0,j=0; while(str[i] != ...
- 5、Docker数据管理
为了能够存储持久化数据以及共享容器间的数据,Docker提出了Volume的概念.让我们通过类似mount的方式将宿主机的文件或者目录挂载到容器中. 在容器中管理数据主要有两种方式: 数据卷(Data ...
- 让er studio 生成带说明的sql
一直使用er studion 来建数据库的模型图. 用了几年苦于 erstudion 不能生成带说明注释的sql 语句,每次生成实体之后都要自己去加注释. 今天根据外国朋友的资料找到了办法 需要自己建 ...
- jpa 踩坑 SQLGrammarException
SQLGrammarException could not execute query cause by not found column id ,, id指的是,返回的结果没有Id 封装结果集出错 ...
- mysql 存储过程学习 汇总
存储过程框架 DEMILITER $$ -- 重定义符 DROP PROCEDURE IF EXISTS store_procedure$$ -- 如果存在此名的存储过程,先删除 CREATE PRO ...
- 如何设置树莓派 VNC 的分辨率
当我们使用 VNC 连接到树莓派时,默认的分辨率非常低.甚至无法显示整个桌面,因此我们需要对分辨率进行设置.在树莓派上设置 VNC 的分辨率很简单,在终端运行下面指令进入设置界面设置. 1 sudo ...
- leetcode-421-数组中两个数的最大异或值*(前缀树)
题目描述: 方法一: class Solution: def findMaximumXOR(self, nums: List[int]) -> int: root = TreeNode(-1) ...