前言

 

 众所周知,大规模互联网服务能力是世界公认的技术问题。经过十几年的发展,腾讯已经积累了大量的互联网服务技术。以QQ即时消息后台服务为例,PPT再现了QQ在线用户在从数百万到数十亿的整个过程中遇到的技术挑战,并与参与者分享了海量互联网后台服务研发和运营中的许多未知秘密。

 

 内容摘要

 

 

 QQ现在有7亿活跃账户,每天同一时间有1.4亿用户在线。QQ拥有超过10,000台即时消息服务器和数百亿对关系链,每天都有数千亿个服务请求对其进行测试。面对这些苛刻的数字,腾讯应该保证99.99%的可用性。当然,QQ在线从10万到1.4亿的整个过程也经历了许多波折。与此同时,腾讯在线从10万到10万也吸取了许多教训。这也表明腾讯对海量服务的理解是长期积累的结果。

 

 

 

 1第一代架构难以支持数百万在线用户

 

 腾讯的第一代架构是在PPT中提到的。他说,当它在网上达到100万时,旧架构的各个方面都会出现瓶颈。以访问服务器的内存为例,单个在线用户的存储容量约为2KB,索引和在线状态为50字节。朋友表中的400个朋友* 5字节/朋友等于2000字节。一般来说,2G内存只能支持100万在线用户。与此同时,还存在一些瓶颈,如CPU/网卡数据包数量和流量/交换机流量。其他服务器也面临着类似的情况。单一服务器无法支持所有在线用户/注册用户。第一代建筑不再具有可持续性。

 

 腾迅通平台部高级技术总监庄认为,10万至百万级在线的关键技术是高性能和7×24小时连续服务。实现高性能的关键因素包括从不使用企业级解决方案、逻辑层中的多进程、万无一失的无锁设计、用户模式IPC、MySQL子数据库子表以及朋友表的自写文件存储。但是,QQ后台可以通过小系统、平滑重建、共享内存中的核心数据、访问层和逻辑层的分离以及命令分发的动态配置来实现7×24小时的连续服务。

 

 

 2第二代架构难以支持数千万的在线

 

 第二代架构也存在一些问题。包括太多的同步流量、状态同步服务器遇到的单机瓶颈、太多的所有在线用户的在线状态信息以及没有单一的访问服务器。当在线人数进一步增加时,单一状态同步服务器无法满足需求,单一状态同步服务器无法支持所有在线用户,单一接入服务器无法支持所有在线用户的在线状态信息。

 

 通过深入分析,腾讯发现后台机器越来越多,单机死机/故障时有发生。与此同时,每周新代码的发布也会导致bug的出现,严重影响服务。相对原始的监控机制导致报警设置不完整。最后,当通过vim或mysql进行操作和维护时,很容易出错。

 

 腾讯通信平台部高级技术总监庄表示,要解决这些问题,必须对现有架构进行改革。这包括向外部世界提供高可用性服务,并向内部提供高操作系统。同时,灰度发布、运行监控、容灾和运维自动化/半自动化也是解决数千万网上用户面临的问题的关键技术。

 

 

 3亿在线时代的到来

 

 随着十亿次在线的到来,腾讯也面临着新的问题。通过对原有系统的不断改进,很难支持十亿级在线。

 

 庄华斯表达了电子时间在线的四个关键特征:高性能、高可用性、高可操作性和高灵活性。因为互联网行业每个月都需要一个新版本。因此,有必要提供高度灵活的业务支持。就硬件而言,高可操作性需要机架的详细物理架构、智能故障分析、操作和维护的组件化以及自动负载转移。为了确保系统的高性能,自写存储层是一个至关重要的因素。庄华斯还表示,每增加一次在线交易量,技术难度就会增加一个数量级。

 

 最后,庄认为,互联网行业有自己的技术规则,需要积累自己的技术。腾讯即时通讯服务的未来战略是全球分销、高效研发、智能监控和报警。

 

 PPT扬声器介绍

 

 腾讯QQ 1.4亿在线用户PPT[附件下载]_QQ20160321-0.png庄腾讯通信平台部高级技术总监、腾讯T4技术专家、腾讯软件开发渠道部总裁庄。

 他于2004年毕业于中国科学院计算技术研究所,并加入腾讯。他是腾讯培养的第一位T4专家毕业生。

 一直致力于QQ即时通讯后台大众服务系统的研发和运营。

 他负责R&D及QQ群聊系统、QQ接入、基础通讯服务系统等后台系统的运行,见证了QQ在线从800万到1.4亿的全过程。

PPT附件下载


 腾讯IM架构:1亿在线背后的技术挑战_2020.pdf (1.49 MB , 下载次数: 2734 , 售价: 2 金币)


----------------------------------------------------------------------------------

哇谷im_im即时通讯_私有云_公有云-哇谷云科技官网-JM沟通

IM下载体验 - 哇谷IM-企业云办公IM即时聊天社交系统-JM 沟通下载

IM功能与价格 - 哇谷IM-提供即时通讯IM开发-APP搭建私有化-公有云-私有化云-海外云搭建

新闻动态 - 哇谷IM-即时通讯热门动态博客聊天JM沟通APP

哇谷IM-JM沟通热门动态博客短视频娱乐生活

关于哇谷-哇谷IM-提供企业即时通讯IM开发-语音通话-APP搭建私有化-公有云-私有化云-海外云搭建

联系我们 - 哇谷IM-即时通讯IM私有化搭建提供接口与SDK及哇谷云服务

即时通讯IM融云世界

IM即时通讯钉钉技术:企业IM钉钉在后端架构上的优越之处

新的市场叫板环信、融云、腾讯云!开源版IM即使聊天工具

企业IM即时通讯聊天办公APP钉钉技术分析交流

哇谷云-怎么样正确认识海外云服务器

公有云和私有云之间有什么区别?类似融云、环信云、网易云、哇谷云?