腾讯大讲堂揭秘:亿级在线背后的1.0与1.5接入服务器架构
需积分: 3 201 浏览量
更新于2024-08-19
收藏 1.39MB PPT 举报
在腾讯大讲堂走进北京航空航天大学的一次演讲中,腾讯即通平台部的高级技术总监icezhuang分享了关于QQ即时通讯(IM)后台架构的演变及其在处理大规模在线用户挑战时的关键数据结构。这次演讲的主题聚焦于“接入服务器的核心数据结构”以及如何应对1.4亿在线用户带来的复杂需求。
1.0接入服务器的核心数据结构主要包括OnlineIndex(在线索引)和OnlineRecord(在线记录)。OnlineIndex用于存储用户的基本信息,如UIN(唯一标识符),标志位(Flag)以及用户的好友列表(FList)的位置,如L1、L2和L3。这些数据按照UIN升序排列,便于快速查找和定位用户。每个用户的数据还包含了在线状态,包括IP地址和端口,以及好友表的具体位置。
OnlineRecord则是用户详细信息的存储,包括UIN、层级(LEVEL)、在特定位置(POS)的存储位置。例如,UIN10003的信息显示其有多个层级的好友列表,以及对应的POS值。这个结构设计旨在高效地管理用户关系和实时通信状态。
演讲者回顾了从十万级在线发展到亿级在线的过程,指出团队面临了海量服务的巨大挑战,包括7亿活跃账户,1.4亿同时在线用户,过万台IM服务器,以及百亿级的关系链对数和每天千亿级的服务请求。为了保证99.99%的高可用性,团队通过升级到IM后台1.5版本来解决这些问题。该版本引入了长连接服务器,以支持视频、语音、文件传输等实时宽带业务,同时也对存储服务器进行了轻重分离,以提高核心服务器的稳定性并加快扩展速度。
第一代架构在面对百万级在线时就显得力不从心,主要问题在于接入服务器内存限制。每个在线用户约需2KB存储空间,这在百万级在线下可能导致性能瓶颈。为解决这一问题,架构优化成为了关键,通过引入新的服务器类型和数据管理策略,腾讯成功地提升了系统的可扩展性和服务质量。
演讲者强调,对海量服务的理解并非一蹴而就,而是团队在长期实践中不断学习和积累的经验。通过分享这些故事,听众可以深入了解如何在高度动态和变化的互联网环境中,构建和优化一个能够承载数亿用户并发的庞大系统。
2020-06-03 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
白宇翰
- 粉丝: 30
- 资源: 2万+
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载