高并发IM系统架构优化实践
互联网+时代,消息量级的大幅上升,消息形式的多元化,给即时通讯云服务平台带来了非常大的挑战。高并发的IM系统背后究竟有着什么样的架构和特性 本文要点: 网易云信 整体架构解析 云信中的客户端连接和接入点管理 服务化和高可用 网易 IM 云分层架构图解析 底层客户端 SDK ,覆盖了安卓,iOS,windows PC桌面端,web网页端和嵌入式设备等多个平台。在SDK层使用的网络协议有4层的TCP协议和基于7层的Socket.IO协议,后者专门用于Web SDK中提供长连接能力;除了集成到应用App中的SDK之外,还提供了供第三方服务器调用的API接口,基于Http协议;最后的A/V SDK是基于UDP协议的实时音视频SDK,用于实现基于网络的语音和视频通话。 网关层:提供客户端直接接入并维护与服务器之间的长连接;其中WebSDK直连的是Weblink服务,这是一个基于Socket.IO协议实现的长连接服务,而供AOS/IOS/PC等客户端SDK直连的是基于TCP协议的Link服务;在Link和WebLink服务中承担的一个非常重要的功能就是所有客户端长连接的管理,后面基于HTTP协议上的网关有API服务,和LBS服务等,其中LBS服务用于帮助客户端SDK选取最合适自己的网关接入点,优化网络效率;而API服务则直接提供来自第三方服务器的业务请求; HA层:在网关接入层之上是HA层