论文部分内容阅读
随着技术革新及网速的不断提升,传统的先下载后播放的视频媒体发布方式已经难以满足用户的需求,随之而来的是视频在线点播技术的发展。据统计,目前的网络数据流量中的绝大部分都是音视频流量,而随着移动设备的更广范围的普及,在线视频点播的需求量将会更进一步的攀升。由此带来的挑战有两方面:一方面是怎样保证多种尺寸各异的移动设备都可以无阻碍地使用视频点播服务;另一方面是怎样应对日益加重的服务器端负荷,以便能弹性地扩展系统性能。在这种背景下,传统的单点服务器无论在硬件配置或者在扩展性上都存在瓶颈,难以满足不断增大的服务需求,有必要将集中式计算的架构调整为分布式计算的架构。本文旨在研究一种服务器端易于扩展、客户端兼容性良好的视频点播系统,实现对多种尺寸客户端的支持,同时可以弹性地在线增强系统性能。本文提出应用SOA架构来解决视频转码服务,同时应用FFmpg来完成对视频文件的转码处理,使得系统可以在云端易于扩展。本文的研究内容包括视频点播系统的工作原理、视频编码解码技术、FFmpeg的应用、SOA的原理及应用方法。本文在实现上,通过将转码服务分布在多个计算节点来减轻中心服务器的压力,实现分布式转码。本文系统后端的数据库使用MySQL,数据访问操作通过应用Hibernate来优化编码,通过对象/关系映射来避免了各种复杂的对数据库的直接操作。网站实现使用目前主流的Spring MVC技术来搭建,实现对业务逻辑、控制逻辑、页面显示逻辑等的分离,同时考虑到网站的安全性设置。为解决不同客户端显示尺寸上的多样性,本文应用Bootstrap响应式设计来实现对各种屏幕尺寸的自适应。