论文部分内容阅读
随着体育视频网站的兴起,用户观看体育赛事,不再拘泥于到比赛现场或者坐到电视机、电脑前观看,用户可以使用手机、平板电脑等移动设备,随时随地点击视频观看。视频网站管理者关心有多少用户访问网站,有哪些地区的用户在观看视频,视频内容的受欢迎程度等等。视频客户端不间断的发送消息,后台服务器采集数据并将其存储。通过对这些数据进行统计分析,并对分析的结果进行数据可视化,能够将晦涩难懂的数据图形化,从而发现数据的深层含义,帮助运营商更好地管理视频网站。结合某体育赛事直播网站的实际需求,视频客户端监控数据的可视化系统的主要难点包括:如何保证图形图像在不同分辨率的屏幕上都能任意显示,并且在放大或者缩小时,图形图像仍能清晰显示;如何缩减图像文件的尺寸,从而节省存储空间和减少下载时间;以及如何解决数据的实时传输问题。论文主要采用Ajax轮询技术和Highcharts.js技术,解决了上述难点。Highcharts.js是一种基于SVG(可扩展矢量图形)的交互性图表生成技术。SVG的可扩展特性使得图形图像能在不同分辨率的屏幕上任意显示,并且在放大或者缩小时,图形图像仍能清晰显示;SVG的矢量图形特点使得集成了SVG的XML文档更小,节省存储空间,提高下载速度。Ajax作为一种创建交互式网页应用程序的技术,以频繁请求的方式保持浏览器和服务器端数据的同步,从而实现了监控数据的实时传输。论文首先介绍了课题的研究背景、国内外研究现状、研究内容。其次对论文中使用的SVG技术、Highcharts技术、Ajax技术进行详细介绍。然后分析视频客户端监控数据的可视化系统的需求,将系统分为实时数据可视化和历史数据可视化两部分。在实时数据可视化部分,利用曲线图、表格等图表,对在线人数、观看时长、比特率、受欢迎的视频等数据进行可视化,同时为了管理众多的仪表盘,开发了仪表盘管理功能;在历史数据可视化部分,对最近的历史数据进行统计分析,利用曲线图、柱状图等图表,对视频播放次数、最大在线人数、CDN流量、比特率等数据进行可视化。论文最终实现了视频客户端监控数据的可视化系统,并在此基础上进一步研究了WebSocket技术的应用。WebSocket摆脱了传统的Web的请求/响应模式,实现了客户端和服务器的双向通信,为突破实时监控数据可视化系统实时性的瓶颈,提供了新的解决方案。