




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
即时通讯架构“社交,是⼈人们运⽤用⼀一定的⽅方式(⼯工具)传递信息,交流思想,以达到某种⺫⽬目的的社会活动。”常⻅见于•••即时通讯,私信应⽤用游戏服务器⻓长连接信息推送通讯服务器组成iOSAndroid客户端WPConnector连接集群LVS
Logic逻辑集群服务化数据集群(Session/Message)IM
数
据
层消息中转LogicSession
ClusterMessage
ClusterUser
A
1
Connector2345User
B
6
ConnectorLogic“对安全性、⾼高可⽤用、扩展性的要求越⾼高,架构的变化越⼤大。”iOSAndroid客户端WPIMLVSConnector连接集群
Logic逻辑集群服务化数据集群(Session/Message)数
据层连接层1.
连接层的作⽤用2.
“允许随时重启更新/
只允许晚上重启/不允
许重启断线”3.
总的来说简单/异步••
陌陌连接层总连接数
1200万+单台服务器压测70万连接,⼀一般使⽤用50%(主流配置)AndroidWP客户端
IM
iOSConnector连接集群LVS
Logic逻辑集群服务化数据集群(Session/Message)数
据层逻辑层1.2.3.4.⽤用户会话验证消息存取异步队列随时重启AndroidWP客户端
IM
iOSConnector连接集群LVSLogic逻辑集群服务化数据集群(Session/Message)数
据层通讯协议“安全性要求流量要求传输要求可靠&⾼高效”••
通讯协议常⻅见协议XMPP/SIP缺点:1.流量⼤大
2.不可靠
3.交互复杂ClientServer
WIFI/2G/3G/地铁/电梯10ms/200ms/12s/TCP
half-closed通信协议设计⺫⽬目标:•••⾼高效:弱⺴⽹网络快速的收发可靠:不会丢消息易于扩展FlagLengthData…FlagLengthData…FlagLengthData…msg:协议格式
良好的协议可以:•••简化系统设计提供可靠个⾼高效的消息传输易于扩展需求REDIS协议CR
LF$$$bytes
of
argument
1bytes
of
argument
2bytes
of
argument
3CR
LFCR
LFCR
LFdatadatadataCR
LFCR
LFCR
LFRedis协议
*
number
of
argumentsSET
name
latermoon*
3
$
3
SET
$
4
name
$
9
latermoon下⾯面都⽤用Redis协议来描述逻辑READ
REDIS
COMMANDFIFOmsg6msg5msg4msg3msg2msg1基于队列的消息协议S:msg-send
msg1C:msg-recv
1S:msg-send
msg2C:msg-recv
2S:msg-send
msg3
msg4
msg
5
msg
6C:msg-recv
3
4
5
6Redis
List:Client
msg-send
msg-recv
msg-send
msg-recv
msg-send
msg-recvList
Base基于队列的交互
Server
传统的IM协议前提是基于⺴⽹网线、WIFI,⺴⽹网络延迟极⼩小移动⺴⽹网络下,交互极其费时,服务器要维护每个状态容易出错“通讯协议优化,尽量减少⼀一次交互中数据往返的次数。”VersionMessage106msg105msg104msg103msg102msg101msg基于版本号的消息协议Redis
Sorted
Set:S:msg-pshC:msg-syncS:msg
v
101
msgS:msg
v
102
msgS:msg
v
103
msgS:msg
v
104
msgC:msg-fin
v
104基于版本号的交互ClientServer
msg-psh
msg-sync
msg-send
msg-send
msg-send
msg-send
msg-finSorted
Set
Base针对弱⺴⽹网络的优化协议•••••消息通过版本号维护顺序新消息到达,Server只负责push通知Client收到轻量的msg-psh后发出同步请求Serv
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园家长预防幼儿肥胖健康讲座
- 夏日萤火虫课件
- 自动贴标机的工作流程
- 2025年环境影响评价工程师考试真题卷:环境影响评价工程师实务操作与法规应用
- 2025年小学语文毕业升学考试全真模拟卷(口语交际与综合实践)试题集
- 2025年会计职称考试《初级会计实务》内部控制与审计重点难点试题集
- 32的水管活结结构
- 2025年导游资格证考试笔试模拟试卷:导游旅游产品创新与设计试题
- 人工智能离散算法评价
- 罐笼安全规程讲解
- 应用PDCA管理工具提高病案归档率
- 果蔬自发气调包装原理与应用演示文稿
- DB43T 2428-2022 水利工程管理与保护范围划定技术规范
- SB/T 11016-2013足部保健按摩服务规范
- GB/T 4062-2013三氧化二锑
- 神经系统的结构与神经调节的基本方式 【知识精讲+高效备课】 高考生物一轮复习 (新教材)
- GB/T 15328-2019普通V带疲劳试验方法无扭矩法
- 马克思主义基本原理(完整版)
- 涉密人员脱密期管理制度
- 企业风险管理-战略与绩效整合(中文版)
- 三阶段DEA模型理论与操作步骤详解
评论
0/150
提交评论