分布式共享系统Maze中边下载边播放模块实现

上传人:宝路 文档编号:47973798 上传时间:2018-07-07 格式:PPT 页数:23 大小:635.33KB
返回 下载 相关 举报
分布式共享系统Maze中边下载边播放模块实现_第1页
第1页 / 共23页
分布式共享系统Maze中边下载边播放模块实现_第2页
第2页 / 共23页
分布式共享系统Maze中边下载边播放模块实现_第3页
第3页 / 共23页
分布式共享系统Maze中边下载边播放模块实现_第4页
第4页 / 共23页
分布式共享系统Maze中边下载边播放模块实现_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《分布式共享系统Maze中边下载边播放模块实现》由会员分享,可在线阅读,更多相关《分布式共享系统Maze中边下载边播放模块实现(23页珍藏版)》请在金锄头文库上搜索。

1、分布式共享系统Maze中边 下载边播放模块实现2004-12-21任茂盛 李世亮 邱志欢 赵 阳Maze:简介l为了解决FTP的可用性不佳、资源有限的问题l混合型P2P结构l支持即时通讯和BBS (类似QQ)l支持跨防火墙的文件共享与下载l支持在线资源搜索和文件目录视图l支持多点下载和断点续传(类似BitTorrent)l基于积点的资源交易体系l采用社交网络的网络链接关系2Maze最新版的界面多点下载社交网络积分与星级即时通讯可穿越防火墙的排队下载天网文件搜索种子机制目录浏览3Maze的系统结构4Maze的下载模块DownloadServer负责文件服务器DownloadClient负责文件下

2、载分块下载,写入临时文件,到下载完毕将文件写回原名5下载部分的改进需求大量下载为视频文件(100M)用户分布广,带宽有限大量用户用假冒文件骗取积分!6Solutionl实现边下载边播放功能!l建立一个独立的播放模块l修改DownloadClient代码,调用播放模块,实 现边下载边播放l记录用户下载播放日志,对日志进行分析,利 用基于字节有用性的缓存策略,实现Cache7分工l修改DownloadClientlMaze和播放器通讯l播放器插件l日志记录和缓存8修改DownloadClientl两个接口l定制数据包:请求服务器返回指定位置的指定 长度的数据lIsReady:判断文件中某一个位置开

3、始的指定 长度的数据有没有下载完毕9修改DownloadClient(2)l定制数据包l用户在观看视频时,可能顺序看,也可能拖动 着看lMaze在下载文件时,所用的顺序并不能满足 播放器的要求l因此需要按需下载数据包10修改DownloadClient(3)lIsReadylMaze可以多点下载,因此文件中可用的数据 分散在文件里不同位置,并非连续l播放器在向服务器发出数据请求之前,先判断 数据是否已经下载l若未下载,发出请求并进入阻塞状态;否则, 继续播放l从根据缓存策略选择优先要下载哪部分11Maze和播放器通讯实现方案lCom的进程外组件l进程间通讯l动态数据交换(DDE)l命名管道(n

4、amed pipe)l共享内存l本地过程调用和远程过程调用(LPC和RPC)lcom采用LPC和RPC12Maze和播放器通讯实现方案 (2)lCom的进程外组件l通讯原理客户程序 (客户进程)组件程序 (组件进程)代理对象存根代码组件对象LPC/RPC客户程序 发起一次 调用 代理对象 接到调用 通过LPC 发送给存 根代码 存根代码 向上传给 组建对象 组建对象 完成这一 次调用。13Maze和播放器通讯具体实现lMaze模块l实现组建对象的定义,编译到maze.exe中l播放器模块l客户程序的访问代码,作为播放器插件中的一部分l中间服务模块l代理对象和存根代码的实现,编译为.dll文件1

5、4播放端l影音文件需要通过播放器向用户展示,由于即 时播放的特殊需要,播放器大多不支持(我们 还没有找到)即时播放,我们需要扩充播放器 的功能来满足即时播放的需要l现在的两大阵营:Real公司的realmedia平台 和Microsoft的windows media service 9平台l由于目前大部分的(75%)影音文件是rm或者 rmvb的,我们选择了realmedia平台15播放端(2)lrealmedia平台简介16播放端(3)l我们需要的信息-用户拖动的时刻lRealmeida平台的File Format Plugin正好给我 们提供了这样的信息,它有一个向client开放 的接口

6、:IRMAFileFormatObjectlIRMAFileFormatObject接口中的Seek(UINT32 seek_offset)函数给我们提供了用户拖动的时 刻17播放端(4)l我们所做的是重写一个支持realmedia格式的 File format插件,在用户拖动时,通知Maze用 户拖动的时刻l当用户拖动的位置还没有下载到时,通知 Maze下载这部分数据l在日志记录部分记录下拖动的行为18日志记录与缓存l日志内容:用户下载的文件标识(MD5值)、 文件开始拖动的位置、文件拖动到的位置、文 件关闭时间l定期收集客户端上的播放日志,汇总分析l目的:对于热门的视频文件,根据统计分析用 户预览一个文件时关注的热点段落,对其进行 优先下载19日志记录与缓存(2)l一个循环的过程 用户A下载记录播放日志修正拖放规律 统计用户B下载时根据规律优先下载热门段l两个接口l播放时的拖放消息接收l对DownloadClient部分返回文件的热门段落信息20日志记录与缓存(3)l内部实现:l以xml方式记录日志l集中的日志服务器 收集客户端的日志,xml文档方便整合 日志记录外的时间就是观看时间段l根据日志不断更新统计结果21日志记录和缓存(4)l缓存策略22Thanks!Any Question?23

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号