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

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

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

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

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

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

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

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

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

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

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

原文发布于微信公众号 - 张叔叔讲互联网(unclezhangcomeon)

原文发表时间:2018-10-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

Cynet:全方位一体化安全防护工具

1999年,布鲁斯·施奈尔曾说过:“复杂性是安全最大的敌人。”彼时还是19年前,而现在,网络安全已然变得更加繁杂。

11420
来自专栏Golang语言社区

Go语言发布1.5版本:彻底告别C代码

在经历了6年6次更新之后,Google的自家编程语言“Go”终于迎来了1.5版本。Google在本次更新中移除了“最后残余的C代码”,因为运行时(runtim...

32490
来自专栏FreeBuf

研究人员发明“完美”数据外泄方法

来自以色列SafeBreach公司的研究人员对隐蔽数据外泄方法进行了广泛的分析,并且发明了他们心目中“完美” 的方法。 SafeBreach的研究人员从2015...

20160
来自专栏SAP最佳业务实践

SAP最佳业务实践:SD–售前活动(920)-4数量合同

一、 VA41创建数量合同文档 数量合同是客户在指定期间订购一定数量产品的协议。此合同包括基本数量与价格信息,但不包含具体的交货日期或数量计划。客户通过根据协议...

33860
来自专栏程序你好

如何保证你的智能手机安全和私密,手机安全需要做到的事

近十年以来,智能手机的应用越来广泛,各种流行的App层出不穷,可以说iPhone这样的智能手机已经彻底改变了我们的生活和行为习惯。请允许我指出一个显而易见的事实...

12020
来自专栏安恒信息

安卓再现系统广播高危漏洞,影响99.9%安卓手机

近日,有博客披露安卓系统存在安卓系统广播漏洞,99.9%的安卓手机将面临安全威胁。恶意程序利用该漏洞,可伪造任意内容的手机短信,及致手机死机,甚至可将手机恢复出...

38960
来自专栏网站漏洞修补

公司网站被百度网址安全中心 警告 该怎么取消拦截

今天早晨一上班,习惯性的打开我们公司的网站,发现公司网站竟然跳转到了赌博、彩票网站上去了,我还奇了怪了,于是去百度搜索我们公司网站,发现网站在百度搜索出现:“百...

50010
来自专栏网站设计制作、数字营销

网站突然增加了不相关的链接的可能原因

有时有的公司可能会遇到公司的网站在首页或者内页突然被添加加了不相关的链接,可以肯定不是公司内部人添加的,那么这种无端被添加了不相关的链接的可能原因是什么?下面就...

14030
来自专栏北京马哥教育

服务好“最后一公里”,高效CDN架构经验

国内,随着互联网的高速发展,因为各大通信公司的政策,造成了南电信北联通互通有局限性,再加上大小且质量参差不齐的运营商,在这特殊的氛围的互联互通下号称“八线合一”...

54850
来自专栏安恒信息

真实案例:数据库审计在入侵行为审计中的作用

做为企业IT应用系统的基础,数据库系统的安全至关重要,它承载了企业运营的关键数据,是企业最核心的IT资产。在数据库安全的日常管理中,内部人员的违规操作和外部黑客...

54550

扫码关注云+社区

领取腾讯云代金券