融云的高质量实时通信架构为多场景应用保驾护航

2021年3月27日,融云X-Meetup科技沙龙第二站登陆南京。本次开发者活动以“高质量、高并发的实时通信架构的设计与探索”为主题,邀请音视频工具工程师王伟、IM高级工程师齐、shell-shell互联软件工程师、Hooke CEO郭伟等到场与开发者分享干货。

融云X-Meetup技术沙龙南京站

音视频SDK架构设计,重在稳定可靠

在沙龙上,融云R&D音像工具工程师王伟首先发表了《融云音视频 SDK 架构分享与应用》的演讲。他认为,在SDK架构设计方面,融云音视频SDK因其简单、易于理解、分层架构、可替换和可重用、易于维护等优势而为开发人员所熟知。这不仅是融云音视频SDK架构设计的经验总结,也是融云音视频SDK,架构,设计的,原则.

目前,融云音视频SDK架构主要由API接口层、数据模型层、会话管理层、基本组件层和信令层组成。在数据模型层,设计应该面向业务逻辑和用户,关注数据模型的不同生命周期,并考虑读写的限制。特别是要做好保护性拷贝,以备后续操作维护。

融云音视频SDK架构

在分享会话管理层,的设计要点时,王伟直接用框架设计图说明了音视频采集、预处理、编码、传输、解码、后处理、渲染之间的逻辑关系。简单直观的表达有助于开发人员更好地理解他们设计的本质。

会话管理层合理设计架构

王伟、,基础组件层,,指出,由于是对底层设备硬件资源的独立任务管理系统,需要更加注重模块功能的衔接,具有间接耦合和接口隔离;但是信令层的设计要求IM信令通道可以封装,可以做Http请求,使其具有独立于业务功能的逻辑,既有基本的通信能力,又可以解包打包,不允许跨层调用。

大规模即时通讯客户端日志系统,重在发现问题

目前,融云SDK服务30万个应用,总点击量超过50亿,平均每日新闻量超过150亿,平均每日活跃用户7000万,每日新闻峰值2218亿,第二峰值2000万。这些数据见证了融云大规模通信架构的亮点。

亮点背后,IM的资深工程师齐坦言:“当我们想要在一秒钟内完成2000万条消息的分发时,不仅是我们自己的和运维团队,就连我们的运营商和机房也总是担心各种各样的意外故障。”因此,融云大型即时通讯客户端日志系统在客户之前发现问题,及时发现自己的问题,确保为客户提供高质量的SDK服务,是极其重要的。

系统中的问题能否在完整、及时得到体现,在成功率可视化是否有突出表现,是设计大规模即时通讯客户端日志系统的主要需求。日志上传的灵活控制,保证移动日志的统一,保证上传的成功率,标签日志的黑名单功能是日志系统设计和升级的重点。

例如,为了实现灵活控制日志上传,应该根据每个客户应用程序来分配日志配置,以满足不同的平台和版本,并且应该设置上传时间间隔和失败重试的次数,以确保日志上传的成功率和及时性。同时,为了有针对性地解决问题,需要灵活控制被动上传和主动上传:被动上传包括日志切换和上传级别,便于关闭和控制;主动上传可以拉手指

定用户特定时间段内的所有日志。

在设计中,保证移动端日志统一,则能有效保证日志的可视性和完整性。此外,合理利用日志标签黑名单功能,使黑名单内的日志不再入库上传,在实践中可极大减少日志量,从而减轻服务器的成本压力。

直播社交依靠融云高质量通信架构的设计

作为X-Meetup技术沙龙活动的“X”嘉宾,虎克CEO过巍分享了公司的发展历程及直播行业对PaaS通信云能力的需求。虎克自2012年开始进入商业直播领域,其形式主要是会议直播,这与现在经常看到的娱乐直播和秀场直播都不同,差异在于视频格式、物理环境不同,线上会议直播与线下内容的交互更强关联,因此对实时性的要求也比较高。随后,虎克进入了秀场直播领域,比如线上抓娃娃,直播社交等多种应用场景。

在公司发展过程中,虎克看到了越来越多有商业价值的应用场景都需要底层通信技术赋能,而想要拥有稳定可靠的通信云能力,不是一家初创公司花半年甚至一年时间,找十几个、二十几个工程师能够做得出来的。

为了快速发展,虎克最终选择与融云牵手合作。合作后,虎克负责应用场景和商业价值的实现,而所有与底层通信云相关的技术与服务都交给融云。目前,虎克已推出60多款应用产品,覆盖超过90%的典型场景,单一应用产品用户量已经突破百万。最为难得的是,所有应用产品用户体验是零投诉,这完全依赖于融云稳定、可靠的高质量高并发的实时通讯架构。

此外,直播社交领域的壳壳互联软件工程师张熙文也分享了《直播社交系统架构升级》的最佳实践,认为用户感知和视觉体验应成为架构升级过程中,重点被解决的问题,并以视觉体验中的主题皮肤设计为例,详细向开发者介绍了该设计的框架技术图。

结语

娱乐社交、电商直播等应用场景,都需要音视频和IM核心功能来支撑,而行业红利的爆发,用户规模的指数级增长,又需要不断升级迭代的架构来保障用户体验。因此,掌握高质量高并发的实时通信的架构设计越来越成为开发者的必备技能。融云X-Meetup南京站技术沙龙,为开发者提供了交流的平台与机会,期待2021年下一站再相遇。