[发明专利]基于双缓存预读的向用户传输数据的方法和装置有效
申请号: | 201110357612.2 | 申请日: | 2011-11-11 |
公开(公告)号: | CN102426553A | 公开(公告)日: | 2012-04-25 |
发明(设计)人: | 李俊;韩坤鹏;马书超 | 申请(专利权)人: | 中国科学技术大学 |
主分类号: | G06F12/08 | 分类号: | G06F12/08 |
代理公司: | 北京凯特来知识产权代理有限公司 11260 | 代理人: | 郑立明;黄晓军 |
地址: | 230026 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 缓存 用户 传输 数据 方法 装置 | ||
技术领域
本发明涉及通信技术领域,更具体地说,涉及一种基于双缓存预读的向用户传输数据的方法和装置。
背景技术
流媒体是指采用流式传输的方式在互联网上播放的媒体格式。流媒体又叫流式媒体,通常商家用一个视频传送服务器把节目封装成流媒体数据包发出,传送到网络上。用户通过解压设备对这些流媒体数据包进行解压后,节目就可以像发送前那样播放。现在流媒体的应用十分广泛,已经成为互联网的热点。
目前,限制流媒体的服务性能的主要因素包括:硬盘技术发展滞后带来的网络存储瓶颈;流媒体点播技术瓶颈;互联网带宽瓶颈等,上述服务性能主要包括:服务的速度和节目的质量。
目前,市场上主流7200转硬盘读取速度在150MB/s左右,磁盘阵列的IO(Input/Output,输出/输入)吞吐量一般在400MB/s左右。虽然这比以前有了很大提高,但相比较计算机其他方面的性能提高和数字信息量的增长速度,硬盘技术仍相对落后。硬盘技术的缓慢发展,限制了网络存储能力,它成为影响流媒体服务速度的主要因素之一。
发明内容
本发明的实施例提供了一种基于双缓存预读的向用户传输数据的方法和装置,以实现提高现有磁盘存储的吞吐率,消除使用单缓存所带来的延迟。
一种基于双缓存预读的向用户传输数据的方法,包括:
创建多组双缓存,为每个用户分配一组双缓存,所述一组双缓存中包括工作缓存和空闲缓存,用于存储为该用户预读取的数据;
创建多个处理线程,每个处理线程分别负责指定磁盘的数据读取,并且为指定的用户服务;
每个所述处理线程针对其所服务的每个用户,通过为每个用户分配的一组双缓存中的工作缓存向每个用户传输数据,在所述工作缓存中缓存的数据传输完毕后,控制进行所述工作缓存和空闲缓存之间的切换。
一种基于双缓存预读的向用户传输数据的装置,其特征在于,包括:
缓存管理模块,用于创建多组双缓存,为每个用户分配一组双缓存,所述一组双缓存中包括工作缓存和空闲缓存,用于存储为该用户预读取的数据;
线程管理模块,用于创建多个处理线程,每个处理线程分别负责指定磁盘的数据读取,并且为指定的用户服务;
数据处理模块,用于针对每个所述处理线程所服务的每个用户,通过为每个用户分配的一组双缓存中的工作缓存向每个用户传输数据,在所述工作缓存中缓存的数据传输完毕后,控制进行所述工作缓存和空闲缓存之间的切换。
本发明实施例通过为每个用户分配一组双缓存,并用双缓存来存储为该用户预读取的数据,在现有磁盘存储容量不变的情况下,可以显著地提高现有磁盘存储的吞吐率,有效地消除使用单缓存所带来的延迟,从而整体提高流媒体系统的服务能力。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种基于双缓存和预读技术的向用户传输数据的方法的处理流程图;
图2为本发明实施例一提供的一种空闲缓存随机填充式策略的时间轴示意图;
图3为本发明实施例一提供的一种指数后退式填充策略的时间轴示意图;
图4为本发明实施例二提供的一种双缓存预读、空闲缓存填充的模拟程序工作流程图;
图5为本发明实施例三提供的一种基于双缓存和预读技术的向用户传输数据的装置的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
实施例一
该实施例提供的一种基于双缓存和预读技术的向用户传输数据的方法的处理流程如图1所示,包括如下的处理步骤:
步骤11、在系统中预先创建多组双缓存,为每个用户分配一组双缓存,所述一组双缓存中包括工作缓存和空闲缓存,用于存储为该用户预读取的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学技术大学,未经中国科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110357612.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:牙科用机头的马达控制方法及控制装置
- 下一篇:箱式水冷套及包括其的水冷壁