温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
来看看微信10年前的aim消息收发架构,你做到了吗?微信消息发送在整体架构上可以分为二个部分,一、手机A发送消息到服务器上,图中一、二、三部分,二服务器发送通知到手机B上,图中45.1、5.267部分。手机币在收到新消息到达通知后进行消息收取的整体架构如下图所示。消息收取的流程主要分为三个步骤,1、手机B发起收取消息的请求到接入层服务器kinect tsv 2、2、接入层服务器kinect t z VR接到请求后转给逻辑层服务器receive the VR进行处理。3RECEIVES VAR从存储层mpg store中获取到需要下发的消息,消息收取scqu ne e确认机制如上图表示,1、根据服务器和手机端之间sequence的差异,可以很轻松的实现增量下发手机端未收取下去的消息。2、手机端存储的sequence使确认收到消息的最大sequence一个。
01:16
账号在多个手机端轮流登录的情况下,可以简单地实现已确认下发的消息。2、对于在若网络环境差的情况,丢包情况发生概率是比较高的,此时经翅出现服务器的回包不能到达手机端的现象。如上图4所示,假如手机A拿SQ cii hi=Eli上服务器收取消息。此时。服务器的ser=150,那手机A可以将sequence为101-150的消息收取下去,同时手机A会将本地的cuciiai置为150。如上图5所示,手机A在下一次再次上来服务器收取消息,此时CUCOA=150,服务器的SESR=200,那手机A可以将sequence为151-200的消息收取下去。如上图6所示,假如原手机A用户换到手机B登录并使用ICUC=120。
02:28
上服务器收取消息,由于服务器已经确认sequence=150的消息已经被。手机收取下去了,故不会再返回sequence为121-150的消息给手机B,而是将sequence为151-200的消息下发给手机B。
我来说两句