千万级高并发的背后:网易云信智慧IM云架构

互联网+大潮的到来,让企业的平台开发工作节奏越来越快,在这样瞬息万变且节奏紧张的大环境下,云服务成为了一个刚性需求。而即时通讯用户的超大规模以及超高的使用率,更使得IM云服务市场方兴日盛,各家平台之间的竞争也逐渐呈现白热化的趋势。与此同时,消息量级的大幅上升,消息形式的多元化,也给IM云服务平台带来了非常大的挑战。谁能支持更大数量级的高并发消息量,并且还要实现稳定和快速,谁就能抢占到引领市场风向的制高点。

2016年风头正盛的网易云信,在上线短短14个月的时间就已成功接入14万APP开发者,覆盖超过5亿用户,在网络和区域上面覆盖了196个国家,567个地区,并保证100%的消息送达率。作为一个企业级IM云服务平台,云信获得了越来越多用户和开发者的信赖。其不仅支持千万数量级的高并发消息量,同时还在稳定和快速两方面有口皆碑。在这成功的背后,网易云信到底拥有什么样的秘诀呢?12月2日,在北京国际会议中心举办的ArchSummit全球架构师峰会上,网易云信首席架构师周梁伟发表了题为《网易IM云服务架构设计与实践》的主题演讲,为我们揭晓了答案。

w2

网易云信首席架构师 周梁伟先生

在峰会上,周梁伟表示,云信之所以能够支持千万级高并发的消息量,这要归功于云信的智慧IM云架构。他详细的阐述了网易云信的智慧IM云架构的分层结构,以及各层结构所具有的作用。并重点介绍了云信的服务化和高可用,以及云信是如何通过优化连接层来实现提速和并发提升的。

智慧IM云平台架构,大品牌有大智慧

网易云信的分层架构由下至上分别为客户端SDK层、连接层、路由层以及业务层。其中,客户端SDK层位于云信分层架构的最底层,它提供了多平台的适配,最大程度上解决了开发者跨平台需求的难题,使开发者能使用自己熟悉的开发语言和平台快速实现产品功能。除此之外,SDK层还具备移动弱网优化、安全加密压缩等重要作用。

连接层则提供了长连接管理优化、平滑升级、跨网切换、广播分包等功能作用。周梁伟表示:“消息快速到达的前提是客户端和服务器之间保持了稳定的快速的连接,所以连接层可以理解为奠定云信服务稳定性的基石。如果用三个词来描述这一层的需求,那就是稳定、安全、快速。”

w1

网易云信IM云平台的分层架构

网易云信全力捍卫服务化和高可用

周梁伟说:“云信的分层IM云架构,各层之间都提供了良好的弹性扩容能力和业务隔离能力。这大大提升了云信的服务化和高可用。”除此之外,他还介绍到:“任何一个软件系统对数据库,存储平台和缓存平台等基础资源的依赖都非常强,这类基础平台资源的服务质量和强大的扩展能力会直接影响到整体系统的稳定性。云信集成了网易自研的分布式数据库,分布式缓存和对象存储服务等基础平台,使云信在面对业务扩容需求时更加从容。此外,云信还集成了如反垃圾云,视频云等面向具体业务的云服务,更加专业的团队来为云信的基础功能保驾护航。”

一个系统服务的质量除了依赖良好的架构,还需要良好的运维支撑平台和运维人员。网易云信一年的不可用时长要小于52分钟,核心功能保证99.99%的可靠性。靠的是什么?周梁伟介绍到:“第一,开发团队有极高的运维意识,在开发设计时就注重应用的可用性和扩展性。第二,运维团队了解开发,通过专业的运维能力帮助开发规避风险。运维和开发相互合作,打造了云信的稳定。任何一个环节都不是100%靠谱的,因此容灾是必不可少的,需要把容灾做到方方面面。”

三大优化措施,助力连接层提速和并发提升

为了更好的支持更大数量级的高并发消息量,并维持稳定和快速,网易云信围绕连接层做了三方向的优化工作。首先,针对区域网络问题,通过边缘加速节点的方式来对网络拓扑做优化。网易云信提供了多层的加速节点,大幅提升连接的稳定性和速度。通过优化,客户端到IDC中心的速度从之前的500+ms锐减至200ms,实现提速60%。同时,消息丢失率也从之前的20%+降低到0%。第二个提速措施,是针对场景化的消息分发机制提升吞吐率,让百万级的消息分发任务可以在秒级的处理时间内完成。 最后,网易云信采用集群化的方式,来解决单节点的性能瓶颈,通过代理的方式,在4核8G的虚拟机上,单个节点的承载能力从1万连接数飙升至10万。

通过周梁伟的演讲,我们可以看到,智慧IM云架构是网易云信得以真正达成“稳定”、“安全”、“快速”的优质IM云服务的坚实基础,也正是有了这个“智慧”的“最强大脑”,加上网易云信针对每一层的大量优化工作,才造就了支持千万级高并发消息量的网易云信。在这套“智慧”的分层架构中,每个层级都有极为明确的分工,各层级间的关系又极为紧密,在任务传递和互相协作上,既拥有足够的保障机制,又具备高可用的弹性。除了分享网易云信的智慧IM云架构之外,周梁伟在峰会上,还对网易云信的一些IM云功能特色做了周详的解析和分享,获得了在场架构师和开发者的一致好评和认可。

网易云信从涉足IM云服务市场之初,就把自己定位成一个专业的管道,以其“稳定”、“安全”、“快速”的特质帮助企业和开发者,减少他们的开发成本、产品研发周期和线上维护成本,让其有限的研发产能在互联网当下唯快不破的生存环境下更多的往自身业务方面输出,促进整个行业的互联网+发展。无论是这种对于自身定位的清晰把握,还是智慧IM云架构的匠心独具,对于国内IM云行业都有着非凡的借鉴意义。