微博 霍海东 2019GIAC 微博大规模视频处理系统的架构与性能优化1,0

CodeWarrior

2019/07/08 发布于 编程 分类

GIAC2019 

文字内容
1. 微博大规模视频处理系统的架构 与性能优化 霍东海 微博平台研发部架构师
3. 讲师简介-霍东海 平台研发部架构师 视频处理系统架构与设计工作 复杂系统性能优化
4. 大纲 背景介绍 微博视频转码服务架构与挑战 转码服务优化之路 总结
5. 大纲 背景介绍 微博视频转码服务架构与挑战 转码服务优化之路 总结
6. 微博视频业务 广场讨论 4亿+月活 开放平台 百万视频分享
7. 微博视频业务 6
8. 微博视频业务
9. 微博视频平台 8
10. 为什么要转码 1080p/1.5Mbps 1080p 5Mbps 720p/1Mbps TRANSCODE 480p/500Kbps 360p/300Kbps Input Codec Video: H.265/HEVC H.264/AVC VP9 VP8 MPEG4 Part 2 MPEG2 Audio: MP3 AAC AAC-LC Output Codec Video: H.265/HEVC H.264/AVC Audio: AAC
11. 大纲 背景介绍 微博视频转码服务架构与挑战 转码服务优化之路 总结
12. 转码服务系统架构 Storage 1080p 5Mbps File Upload Client Trans Center Scheduler 360p Runner720p0.3Mbps 1Mbps 1080p 5Mbps 480p 0.5Mbps
13. 大规模视频转码的挑战 计算复杂 低延迟 高并发上行 高并发、高可用、高性能 微博实时性要求 特点 挑战
14. 大纲 背景介绍 微博视频转码服务架构与挑战 转码服务优化之路 总结
15. 转码服务优化之路 缓存 冗余 并行 静态化 分治 队列化 读写分离
16. 转码服务优化之路-顺序上传 Sequence Upload store upload transcode Latency
17. 转码服务优化之路-并行上传 Parallel Upload store upload store upload transcode Latency
18. 转码服务优化之路-并行转码 Parallel Upload Parallel transcode store upload store upload split transcode transcode transcode transcode merge Latency
19. 转码服务优化之路-边传边转 store upload transcode store upload transcode transcode merge Latency
20. 转码服务优化之路 任务量陡增 更加细粒度的任务调度 更加复杂的任务依赖关系 更高的失败率 基于DAG的逻 辑组织框架 高可用、高性能 的任务调度器
21. 转码服务优化之路 Java download Java split download upload-gop transcode download-gop upload transcode-gop 代码拆成闭包 DAG管理闭包依赖 transcode-gop merge-gops DAG实现闭包执行
22. 转码服务优化之路 Olympiadane videoTrans sve Groovy gop Center Scheduler Task Runner A Executor Group Job Runner B Executor
23. 转码服务优化之路-DAG 可组装的独立组件 脚本支持业务 Feature静态实现 DAG动态融合 独立组件独立测试 易扩展 易部署 高性能 22
24. 转码服务优化之路-DAG down split up-gops 23
25. 转码服务优化之路-DAG down -gop1 trans-gop1360p upgop1 … down down -gop1 trans-gop11080p upgop1 … split down -gopN up-gops trans-gopN360p upgopN … down -gopN trans-gopN1080p upgopN … 24
26. 转码服务优化之路-DAG down -gop1 trans-gop1360p upgop1 … down down -gop1 trans-gop11080p upgop1 down -gopN up-gops trans-gopN360p merge360p trans-gopN1080p merge480p merge1080p upgopN upload … down -gopN downgops downgops … … split downgops upload upload upgopN … 25
27. 转码服务优化之路-DAG down -gop1 trans-gop1360p upgop1 … down down -gop1 trans-gop11080p upgop1 down -gopN up-gops trans-gopN360p merge360p trans-gopN1080p merge480p merge1080p upgopN upload … down -gopN downgops downgops … … split downgops upload upload upgopN … 过程监控 26
28. 转码服务优化之路-DAG 字节码编译技术 Protostuff 27
29. 转码服务优化之路-调度器 高吞吐量 调度任务量陡增(万次每秒) 更加细粒度的任务调度 调度占比低于5% 千级别集群高可用管理 要求99%在10ms以内 更高的失败率 最优调度 28
30. 转码服务优化之路-调度器 中心化调度器 去中心化调度器 调度准确 资源依赖 亲和监控 性能损耗 扩展性更强 优点 调度准确度不够 缺点 29
31. 转码服务优化之路 Task Queue optimal task Executor Queue Scheduler Executor optimal executor Scheduler Running Queue push task acquire task Executor 1 Executor 2 heart beat 带锁单发调度 Executor N
32. 转码服务优化之路 Task Queue optimal task Executor Queue Scheduler Executor optimal executor random executor Scheduler Running Queue push task acquire task push task acquire task heart beat 带锁双发调度 Executor 1 Executor 2 Executor N
33. 转码服务优化之路 Task Queue Executor Queue Scheduler Executor Running Queue TimeOut Deamon repush task Executor 1 Executor 2 10s loop 超时重试 Executor N
34. 转码服务优化之路-调度器 10ms派发 水平伸缩 弹性扩缩容 宕机自动摘除 4个9可用性 33
35. 转码服务优化之路 IDC A Center 1 IDC B Center 2 Center N Redis Redis Redis Center 1 Center 2 Center N Redis Redis Redis Mysql Mysql Agent1 Agent2 … AgentM Agent1 Agent2 … AgentM Runner1 Runner2 … RunnerM Runner1 Runner2 … RunnerM
36. 转码服务优化之路-其他优化 pmode me/subme pme x265 yasm to nasm
37. 大纲 背景介绍 微博视频转码服务架构与挑战 转码服务优化之路 总结
38. 总结 速度整体提升5倍 集群利用率标准差下降50% 业务支撑效率成倍提升
39. 总结 低延迟 高可用 并行上传 分治 并行转码 递归 极致并行 贪心 动静分离 高内聚 超时重试 低耦合 冗余部署 空间换时间
41. 关注msup微信公众账号 关注高可用架构公众账号 获取更多技术实践干货 改变互联网的构建方式