前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >QQ如何把你消息传递给好友的?(下篇)

QQ如何把你消息传递给好友的?(下篇)

作者头像
张叔叔讲互联网
发布2018-10-29 16:25:03
7920
发布2018-10-29 16:25:03
举报

话说你已经成功注册了QQ号码,取名叫“村头小伙”。你的同学小芳“村里那个姑娘”也接受了你的好友申请。之后的日子里面,你们经常通过QQ发送文字和语音,偶尔还会视频聊天。那么文字和语音如何到达小芳手机的?通过这篇文章,张叔叔保证让你豁然开朗。

先来回答一个问题,你如果从城市北边的学校到城市西边的动物园?通常情况下我们有两种方式:从学校坐公交车到城市中心的公交枢纽,然后换成一辆公交车到达动物园;明确学校和动物地址之后,直接驾车从学校到动物园。第一种方式中有个公交枢纽,起到中转的效果;第二种方式是两个地点直接相连相通。

你通过QQ发送消息给小芳的时候类似于从学校到动物园,可以把你和小芳所在的网络位置比作学校和动物园,而腾讯的服务器可以比作公交枢纽。你发送的消息传递到小芳同样有两种方式。

先来介绍比较简单的中转方式,当你和小芳登录成功之后会与腾讯的服务器建立连接,通过这个连接你们的电脑或者手机可以与服务器进行信息交互。当你发送消息给小芳时,消息首先通过这个连接到达了腾讯服务器。服务器解析消息格式,发现这些消息的接收者是小芳,服务器找到与小芳的连接,并且将消息通过这条连接发送给小芳。腾讯服务器此时起到的作用就是公交枢纽的作用,通过该枢纽可以实现任意站点之间的连接。

中转方式的优点很明显,实现相对简单,只要所有的用户与腾讯服务器建立连接就可以了,消息的调度和推送都由服务器负责。缺点是什么呢?如果任何消息都要通过服务器中转,那么服务器真的是很忙,而且当消息量比较大的时候,服务器还会很拥堵。这就好比所有人坐公交车都要去公交枢纽转乘,公交枢纽的服务人员不得忙死了,周边的道路肯定也会非常拥挤,最终大家都不能按时到达目的地(消息延迟),很多人可能也因此中途下车了(消息丢失)。

下面谈到的第二种直连方式可以有效地解决上述的问题。直连的方式就是你和小芳之间是直接相连的,发送的消息不用通过第三方直接到达小芳。你和小芳是怎么实现直连的呢?首先是获取彼此的连接地址,这个腾讯会提供对应的服务支持你和小芳获取彼此直连的地址。你们获取彼此地址之后就可以直接连接到一起,这个时候是不是和小芳的距离突然就缩短了。

无论是中转方式还是直连方式,都需要解决一个问题,怎么保证消息到达呢?你给小芳发送的10条信息丢失了5条,这个天聊的是不是断断续续。你给小芳发送1条消息,结果小芳重复收到了5条,这个天聊的是不是啰啰嗦嗦。如果现在让你解决消息到达率和重复率的问题,你会怎么做呢?

为了保证你和小芳的沟通顺畅,腾讯可是做了很多事情。首先,可以为每一条消息增加一个编码,比如1、2、3、4、5,小芳会把收到的消息编码反馈给你,比如自己收到了1、2、3、4,编号5的消息很明显丢失了。这个时候为了保证到达率,可以重新发送编号为5的消息。通过以上手段就解决了消息到达率的问题。

消息重复问题是不是也可以通过编码解决?of course!小芳收到消息之后取出消息编码,然后判断之前又木有收到过这条消息,如果之前出现过,那么肯定是重复消息,不再展示即可;如果没有出现过,那就是新消息,可以进行展示。如此,重复问题得以解决。

是不是通过这两篇文章对于QQ消息是如何发送给好友有了更清晰的认识,还是那句话,相信坚持与专注的力量,跟着张叔叔继续学习吧!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-10-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 张叔叔讲互联网 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文档服务
文档服务(Document Service,DS)是腾讯云数据万象提供云上文档处理服务,支持多种类型的文件生成图片或 html 格式的预览,可以解决文档内容的页面展示问题,满足 PC、App 等多端的文档在线浏览需求。同时,本产品还提供文本隐私筛查能力,可以有效识别文本中的身份证号、银行卡号、手机号等敏感数据,满足数据可用性和隐私保护的各种要求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档