斗鱼:如何打造一个高性能、高可用直播系统架构

2019 年 9 月 05 日

斗鱼:如何打造一个高性能、高可用直播系统架构

近几年来,国内直播行业发展迅猛,网络直播平台也成为了一种崭新的社交媒体。直播火热的同时,也给直播平台的技术与架构带来了诸多挑战。作为行业领头人,斗鱼在架构上不断迭代、改造与优化,形成当前能支撑千万级用户同时在线观看的架构平台。在这个过程中,斗鱼的直播系统架构踩过哪些坑,演进出哪些特性呢?本文整理自斗鱼房间中台负责人彭友顺近日在 TGO 鲲鹏会武汉分会活动《大规模互联网系统架构设计与实现》上的演讲,内容如下。

目前斗鱼直播系统每天有20 亿+ 的请求量,并且在今年3 月份,PDD 入驻斗鱼的时候还曾达到40 万+ 的瞬时QPS,同时我们的服务增长到了上千实例的规模,在全国不同地区和不同机房进行了部署,提供给上百个内部业务方使用。总结下来,斗鱼直播系统有三个特点——流量大、服务多、架构复杂。针对这些问题,要确保整个系统的高性能和高可用,对于我们的技术开发团队来说也是一个比较大的挑战。

高性能业务架构演进中的挑战与解决方案

三大挑战

早在5 年前,我们和其他公司一样处于单体应用时期,主要使用“Nginx+PHP+Memcache+MySQL”,当时遇到最大的一个问题,是如果一个用户进入到直播间访问 Memcache 的时候,如果刚好 Memcache 里面缓存数据失效了,那么请求就会穿透到 MySQL ,会对服务造成很大的压力。

原文链接:【 https://www.infoq.cn/article/we4dDaWLO7ZsHLij6AZ9 】。未经作者许可,禁止转载。

登录后可解锁全站优质内容

免费畅享技术公开课、顶尖技术团队访谈、一线互联网大厂技术实践

文章
视频
电子书
研究报告
立即登录
2019 年 9 月 05 日 09:21 9927

评论 6 条评论

发布
用户头像
很干货,读了前10段,就已经发现自己有好多盲区了。
2020 年 04 月 22 日 02:34
回复
用户头像
挺好
2019 年 09 月 12 日 10:23
回复
用户头像
写的很真实,很有参考意义。
2019 年 09 月 06 日 09:23
回复
用户头像
彭老师的分享很干货!TGO鲲鹏会武汉分会会越来越好
2019 年 09 月 05 日 15:57
回复
用户头像
不错的文章
2019 年 09 月 05 日 12:53
回复
用户头像
喜欢这样的文章,朴实平华,大白话,有很强的借鉴意义。
2019 年 09 月 05 日 11:13
回复
没有更多评论了
发现更多内容

有关Kotlin Companion 我们需要了解到的几个知识点

王泰

Java 编程 kotlin 编程语言

Zoom的加密算法,到底有什么问题?

范学雷

算法 编码习惯 产品设计 安全 编程语言

漫谈哲学与编程

keelii

编程 哲学

在谈判中,你有哪些属于自己的独特的方法和技巧?

Yolanda

最近的一些人生感悟

小智

人生 哲学

聊聊苹果公司技术部门的宫斗和冷战

赵钰莹

程序员 外包 apple

软件世界中的个人英雄与团队协作

王泰

团队管理 软件工程 团队协作

敏捷(组织)转型的6个准备条件

Bob Jiang

团队管理 敏捷 组织转型

Facebook在用户增长到5亿时的扩容策略

Rayjun

团队管理 扩容

理性主义和实证主义

王泰

理性主义 实证主义 哲学 软件工程

「超级右键」

非著名程序员

macos 程序员 效率工具 软件 Mac

知乎开发了一个搜索引擎

红泥小壶

搜索引擎 百度 知乎

基于Kubernetes的多云和混合云

倪朋飞

云计算 架构 Kubernetes 微服务架构 Service Mesh

终极 Shell

池建强

Linux Shell

回"疫"录(2):不知者无畏

小天同学

疫情 回忆录 现实纪录

揭秘|为何程序员们能一直保持高收入?

丁长老

学习方法 程序员 写作 高薪

写作平台使用感受

小天同学

产品 体验 反馈

随手记备忘录的好习惯

changyou

浅谈负载均衡

Damon

Java 负载均衡 Kubernetes 微服务架构 Spring Cloud

死磕Java并发编程(6):从源码分析清楚AQS

七哥爱编程

Java Java并发 并发编程 AQS

Java并发编程系列——线程

孙苏勇

Java 并发编程 线程

很不幸,自动化测试永远只能是必要非充分条件

刘华Kenneth

DevOps 敏捷 自动化 测试 金字塔

敏捷开发 | 张三与需求管理

Worktile

敏捷开发 需求管理

如何阅读源码?

武培轩

Java 源码 面试 进阶 后端

程序员陪娃漫画系列——修龙头

孙苏勇

生活 程序员人生 陪伴 漫画

我敢说 80% 的程序员都掉进了「老鼠赛跑」的陷阱

非著名程序员

读书笔记 程序员 程序人生 提升认知

Disruptor为何这么快

Rayjun

Java Disruptor

软件工程的史前时代 -- Therac-25 事件

王泰

质量管理 软件工程 软件危机 软件测试

小论互联网项目管理

南方

项目管理 互联网 个人成长 碧海潮生曲

克制文章长度

changyou

加班能解决交付的期望么?

拖地先生

项目管理 领导力 管理 时间管理

众安黑客马拉松大赛总决赛-InfoQ小编探班

众安黑客马拉松大赛总决赛-InfoQ小编探班

斗鱼:如何打造一个高性能、高可用直播系统架构-InfoQ