00:07
大家好,我是腾讯云音视频技术导师陈瑞龙,本次分享主要给大家介绍腾讯云即时通讯I'm是组合构建低延时、高可靠、高稳定以及高安全方面的一个通信能力,以及底层的核心技术支撑跟核心特性介绍。本次分享分为四个部分,包括产品介绍、产品通信底座rt for I'm核心特性介绍、I'm的应用场景以及如何快速集成我们的通信服务。首先进入到我们第一部分即时通信I'm产品介绍,先介绍一下腾讯云即时通信I'四个什么样的产品。腾讯云即时通信I'm是基于QQ能力开放出来的pass服务,只有将客户端SDK植入您的APP,同时在服务端简单集成API接口和第三方回调接口,即可拥有QQ、微信的群聊、单聊以及收发互媒体功能。腾讯会议的在线。
01:07
会议功能,斗鱼的直播同步功能,微信的短视频评论功能,然后达到笔肩QQ、微信的稳定可靠通信能力。接下来介绍我们开放这个产品的初衷。我们发现随着移动互联网的快速发展,大部分客户开发的APP都对IM钮强的诉求,但如果自己独立开发一个I'm产品,会面临着开发量大,单流、去流、弹幕、文本、图片、点赞等功能都要自己实现一把。另外,对于I'm的高稳定、高可用、高灵通性方面,由于缺少经验,往往都处理不好。同时也无法应对线上用户突发带来的各种服务器高负载的问题。基于上面的原因,我们决定把QQ底层能力开放出来给到客户使用,让客户只需要简单植入SDK,就能具备有QQ一样的高可用、高稳定、高灵通和高抗突发的能力。
02:11
这才有了腾讯云即时通讯I'm这个产品的诞生。那么我们产品能够给客户带来什么样的价值呢?首先,集成MSDK后,在消息传输方面,我们支持文字、图片、视频、语音等副媒体休息以及客户自定义休息和表情,也支持消息漫游、撤回、转发等扩展能力。在会话管理方面,I'提供了一系列ti组件,集成了这些组件就可以轻松实现绘画列表展示、历史消息漫游展示等功能。关于群主管理方面,我们提供了群成员管理、自定义字段、群资料跟公告变更展示等功能。同时也提供了工作群、社交群、会议群和直播群等多种群主类型,满足客户的个性化群主需求。只有在资料关系链方面,我们支持私自用户资料更改头像、可配置好友关系等能力,可以适配您的业务场景。总之,集成我们I'm SDK可以适配您对I'm的绝大部分场景的诉求,您只需要关注业务方面的交互就可以了,我们帮您解决底层传输。
03:29
存储等问题,上面是M整体架构,M整体架构由SDK、接入、业务逻辑和存储等四个部分组成,最上面是SDK层,SDK负责网络连接、登录上线和数据收发功能,同时也提供了多种平台的接入能力。下一层就是我们的接入层,包括前帧、即时通信加速、网SSO、业务分化模块等,这一层主要负责通信加速、数据加解密和业务分发。为了防止某个客户端版本实现出现bug,导致收发消息出现时循环而影响到其他客户,接入层这边还提供了。
04:12
评控容债能力下来就到了业务逻辑层,这里就包括资料关系链状态、习主席单流、群流、群储管理等等。最下面就是我们的数据存储层,这里包括mango DB以及腾讯智研的存储服务gro。其时通讯I的账号、四六光系列跟聊天休息绝大部分都是存储在里面。我们自己的服务具备有多地最多11份备份实时同步跟载能力,确保数据不会因为某个网络故障或者机器硬件故障而导致数据出现丢失的问题。这一产品优势方面,我们提供了包括Windows Linux、安卓、iOS、小程序、web端等平台的接入能力,覆盖了放互联网、电商、企业、办公、交易、传统行业如金融、保险、银行等场景。
05:12
在网络质量方面,利用我们基于QQ多年搭建起来的r for I的通讯网,使到了APP从接入到中间传输到数据回调给服务端等全链路、全方位的加速能力。在业务特性上,我们提供了业务界领先的特性,包括提供全员精准快速推送能力,支持10万人大群。解释下这里的10万人大群,它的功能跟QQ群还有微信群一样,收发消息、聊天记录存储、漫游都没任何限制,和经常听到的聊天是跟直播群的方案设计是完全不一样,后面两种群会存在上行休息性制、不存聊天内容等问题。接下来重点分享I'm通信底座前证及时通信网r one for I'm的核心技术特性,通过这些特性来介绍我们是怎么把I'做到真正意义上的。D延时高可。
06:12
靠高稳定以及高安全首先是节点分布情况,众所周知,对于所有通信加速网,节点数以及分布广度绝对是底层基础,阿Di one four IM通信网在全球主要国家均有部署加速节点,总节点数超过2100个,节点之间两两互联,最终构建成一张fourma全网图,如上图所示。同时加上我们自研公网质量频次中心应用成自研的智能调度路由、各个加速算法以及网络感知自动剔除能力,让我们rt one for in的核心通信网能够提供比普通线更稳定、更抗抖动、更低延时的数据通信能力。接下来我们会从第一公里端测最优接入以及rt one通信网各种加速特性来介绍我们是如何实现这个能力。首先对于第一公里最有。
07:12
说接入问题,我们经常听到大家有个空话,就是地离距离就近,接入是不是就是最优的?答案当然是不是,因为不管国内还是海外,都存在地理最近但网络造型的情况。举两个真实例子,第一是这样,移动从距离来看,它应该是接到上海是最优的,但是我们通过公测平台,并且合AB test以及在QQ等多像业务的实际测试,发现,浙江移动只有约55%的IP段接到上海市最优的,还有45%的IP又走到广东或者天津才是最优的接入。另外一个例子,河北移动按距离来看,他应该是接到天津是最优的,但是从平台的数据来看,只有不到80%的IP接到天津才是最优,还有20%的IP又跑到上海去。
08:10
另外,公网抖动、运营商割接等等问题也都会让就近接入效果出现折扣。再举个例子,几年前某一天我们发现重庆移动到深圳移动的接入点,它的效果从凌晨开始拓展变差,后面我们通过跟运营商多方沟通,最终才发现是因为重庆移动当天凌晨有做过割接,割接后那个路由配置有问题引起的。综上,如果要实现端测的最优接入,就不能简单的按第一就近接入,只有通过公网质量频次中心频测,并构建以网关IP维度生成最优的调度信息,这样才能真正实现对任意用户都能提供最优接入,达到整体的一个最优效果。正是在这种背景下,我们搭建了公网质量品测平台,结合用户网关到各个加速节点的实验。
09:10
他丢暴力的信息,并利用同一营商加权,最终生成以网关IP为维度的最优调度库,每天定期更新,同时发现公网有出现抖动时,还可以实时生成干预库。最后分享我们公网评测中心的三个核心特性,第一个就是评估因子的一个确定,我们的评估因子是通过数学推导并结合多个业务进行AB态势的一个测试才最终确定出来的。第二,针对中小运营商的修网关由于样本量不足引起的调度不准问题,我们借用了TCP中SRT的原理,利用历史数据跟当前数据结合,彻底解决了修网关的一个小样本量导致的调度问题,并且通过AB test实测发现业务登录成功率在这种小网关上面有了差不多20%的提升。第三就是解决了net多出口导致调度不准问题。所谓的net多出口意思就是说同个用户在同个网络下,如果访问的是移动服务器的话,那么后台看到的网络IP就是移动了,如果访问的是联通或者电信的服务器时,那么后台看到的网络IP又变成了联通跟电信了。因为这种情况下,由于无法知道用户的真实身份,所以会导致调度出现不准的情况。
10:35
针对这种情况,我们公网质量品质中心利用虚拟网关原理,把这些网关都当成是同一个网关处理,最终在这些网关下都生成了同样的一个最优接入列表啊,彻底解决这种。net多出口的一个问题。通过公网质量品质中心,这都用入到我们最优接入点以后,就进入了我们rt one for I的通信网,也就是我们将所说的第二公里的加速问题。经过多年的研发,我们加速网具备了很多加速特性,其中一个就是自研的带成本因子的最优路由算法,如图所示,从香港到约翰内斯堡有两条链路。
11:19
可以走,一条是公网车链,大概有467毫秒,另外一条就是通过我们rt for的加速网,然后通过马尼拉中转,整条链路时延可以降低到298毫秒,相比公网直连从网们加速网络可以降低差不多169毫秒。整体使用降低了36%,效果非常明显。另外我们知道每个加速节点其实都是有成本的,比如它的带宽,它的流量,所以我们还提供了一种能力,如果客户觉得走最优加速成本偏高,那么可以通过个性化定制成本因子,直接走到次优甚至次次U的链路去,达到成本跟性能的最佳平衡。通信网的下一个特性是我们支持多路无状态传输能力,如图所示,每个加速节点之间都是一些建立好多条链接,用户数据到其中一个节点后,会通过多条链接同时把数据推送下去。
12:25
同时,通信网还针对安装视频文件以及图片这种大数据大包的传输特点,通过把大包拆分成悬包,再多路并发的传输方式达到最优的传输效率。通信网的另外一个特性就是支持几次传输模式,它的意思就是说我们通信网络支持回程更气层走不同的线路,这个特性在网络出现频繁抖动时能够提供最优的传输效率。在通信协议性质方面,我们调研过多种加速协议,包括s rt web r tck cp u d t quick以及资源加速协议,最终发现Google开源的quick协议不管可靠性、加速效果、通用性以及集成难度方面相对其他协议都有一定优势,所以我们最终采用quick协议来作为我们加速节点之间的通信协议。
13:26
签订协议后,同的项目直接剥离出quick的掩码,并且做定制封装成支持全双工通信的QUICK4层协议库,并应用在通信网的加速节点上面,作为加速网络的一个高可靠传输的保障,高安全性也是通信网的核心特性之一。从图所示,我们端次采用了QQ同款的加密级别,同时数据到了加速节点后,又增加了一层quick的自身的加密算法,双重加密确保数据在公网传输时更难被检测跟解密,数据传输更安全更有保障。
14:07
另外,我们知道公网其实比较容易出现抖动,所以加速节点出现异常时,快速发现并自动剔除也成了我们整个加速网的又一个核心特性。如图所示,拉格斯到香港刚开始最优路径是通过拉格斯到法兰克福,到北京再到香港。当拉格斯跟法兰克的线路因为某种原因出现异常时,我们整个加速通信网会快速发现一广播到其他加速节点,这样其他节点就不会再通过这个节点进行中转,同时拉格斯的节点也会重新计算到香港的最优路径,最终发现通过马德里中转式最优的。同理,当拉克斯到马格德里的线路又出现异常时,这时候又会重新计算最优路径,这时候整条链路就变成通过马尼拉再到香港才是最优。除了加速节点异常自动剔除外,通信网还支持了APP端测到接入节点异常探测跟快速容灾。如图所示,马尼拉节点机房因为停电导致节点出现故障,我们的通信网很快就检测到,并且在一分钟之内就做了自动剔除,处理下来就是结果展现。上面是从国内。
15:31
到印度走我们加速网络发生互媒体跟直连情况的数据度比,从效果来看,走了我们加速后效果要眼影还没加速的情况,这是我们统计到平台中所有客户海外联网登录死人的分布情况,我们发现走的加速第50分位的死人与没加速相比有了近40%的降低,第90峰位的死人提升效果更加明显,降低了差不多一倍。最后再次做一下总结,就通过通信网提供的公网质量品质平台,结合应用层的最优路由算法、多路传输及致传输协议优化、双重加密以及异常剔除等核心技术特性,能够给APP提供一个DS高可用、高可靠以及安全的底层通信能力,有效的给APP提供快速可靠的访问体验。那么怎么快速接入腾。
16:31
腾讯营及时通讯I'm产品呢?请看下面这个视频,大家只要按照这个视频的方法来集成,基本一分钟之内就能快速集成我们的I'并做开发,一分钟跑通DEMO。跑通DEMO需要以下四个步骤,第一步,创建应用第二步,获取秒信息第三步,下载并配置DEMO源码第四步,编运行首先我们来看第一步,创建应用,登录I'm控制台,点击添加新应用,此处输入你新添加的应用名称I'm,点击确认,我们可以看到创建成功。第二步,获取密钥信息点击刚才创建的应用,在基本信息栏我们可以看到我们所需要的PID。
17:14
密钥第步载置码、编行码拷贝地址。克,此时由于实验原因,我先下载了源码,并在装进行工程打开源码下载完毕后,我们需要进行一个全配置。打开generate test us文件,我们可以看到该里面有两个字段。Sdkp PID secret k,我们需要将我们新创建应用的这两个字段拷贝到代码中,APID。Secretary。此处需要说明的是,这个铭文的secret key仅适合在本地跑动DEMO和功能调试。正式发布你需要按照以下步骤进行,需要将us的计算代码集成到您的服务端,并提供面向APP的接口。
18:15
在需要U时,您的APP向业务服务器发起请求,获取动态的U,以保证信息安全好。配置完毕后,第四步进行边运行。编辑完成后,我们就可以进行代码的运行和调试。以上是我今天的所有内容,谢谢观看。
我来说两句