致谢 | 第5-6页 |
摘要 | 第6-7页 |
ABSTRACT | 第7页 |
目录 | 第8-11页 |
1 引言 | 第11-14页 |
1.1 论文背景 | 第11-12页 |
1.2 国内外分布式转码现状 | 第12页 |
1.3 论文主要目标 | 第12页 |
1.4 论文主要工作以及组织架构 | 第12-14页 |
2 系统相关技术 | 第14-28页 |
2.1 分布式系统 | 第14-20页 |
2.1.1 分布式系统介绍 | 第14-15页 |
2.1.2 GEARMAN分布式任务调度框架 | 第15-17页 |
2.1.3 浮动IP与负载均衡 | 第17-20页 |
2.2 视频处理技术 | 第20-25页 |
2.2.1 FFMPEG | 第20-21页 |
2.2.2 视频分割与合并 | 第21-22页 |
2.2.3 视频格式标准选择 | 第22-25页 |
2.2.4 相关名词解释 | 第25页 |
2.3 分布式存储HDFS | 第25-27页 |
2.4 本章小结 | 第27-28页 |
3 分布式视频处理系统方案设计 | 第28-40页 |
3.1 需求分析 | 第28-33页 |
3.1.1 分布式视频处理系统总体分析 | 第28-30页 |
3.1.2 转码系统需求分析 | 第30-32页 |
3.1.3 视频处理系统开发所需要解决的问题 | 第32-33页 |
3.2 方案设计 | 第33-38页 |
3.2.1 分布式视频处理系统设计原则 | 第34-35页 |
3.2.2 系统架构设计 | 第35-38页 |
3.3 系统类图 | 第38页 |
3.4 本章小结 | 第38-40页 |
4 系统详细设计与实现 | 第40-56页 |
4.1 方案 | 第40页 |
4.2 负载接入模块(API) | 第40-45页 |
4.2.1 具负载接入模块功能设计 | 第42-43页 |
4.2.2 API工作过程 | 第43-44页 |
4.2.3 API与RDS交互 | 第44-45页 |
4.3 视频预处理模块(RAZER) | 第45-49页 |
4.3.1 功能逻辑描述 | 第45-46页 |
4.3.2 资源隔离与PIPELINE控制 | 第46页 |
4.3.3 转码策略 | 第46-48页 |
4.3.4 RAZER获取WORKER状态,并制定针对服务器的策略 | 第48页 |
4.3.5 RAZER与RDS交互 | 第48-49页 |
4.4 视频任务分发模块(JOB-SERVER) | 第49-51页 |
4.4.1 功能逻辑描述 | 第50页 |
4.4.2 GEARMAN服务器端逻辑与实现 | 第50-51页 |
4.5 视频任务处理模块(WORKER) | 第51-54页 |
4.5.1 功能逻辑描述 | 第52页 |
4.5.2 WORKER获取信息以及截图功能实现 | 第52-53页 |
4.5.3 视频的拆分与合并 | 第53页 |
4.5.4 WORKER转码功能的实现 | 第53-54页 |
4.6 流媒体服务器 | 第54-55页 |
4.7 本章小结 | 第55-56页 |
5 系统测试 | 第56-68页 |
5.1 测试方案设计 | 第56-57页 |
5.1.1 测试目标 | 第56页 |
5.1.2 性能指标预估 | 第56-57页 |
5.2 测试环境搭建 | 第57-62页 |
5.2.1 搭建HDFS,映射 | 第58-59页 |
5.2.2 安装KEEPALIVE,配置浮动IP实现 | 第59-60页 |
5.2.3 安装和配置NGINX,配置 | 第60-61页 |
5.2.4 安装GEARMAN | 第61-62页 |
5.2.5 安装FFMPEG | 第62页 |
5.3 功能测试 | 第62-65页 |
5.3.1 服务接口设计 | 第62-63页 |
5.3.2 功能测试 | 第63-65页 |
5.4 性能测试 | 第65-67页 |
5.5 系统优化 | 第67页 |
5.6 小结 | 第67-68页 |
6 结论与展望 | 第68-70页 |
6.1 本章总结 | 第68-69页 |
6.2 未来展望 | 第69-70页 |
参考文献 | 第70-72页 |
作者简历 | 第72-74页 |
学位论文数据集 | 第74页 |