[发明专利]一种基于异步非阻塞的磁盘文件读写速率控制方法有效
申请号: | 201610998027.3 | 申请日: | 2016-11-14 |
公开(公告)号: | CN106775447B | 公开(公告)日: | 2020-03-27 |
发明(设计)人: | 李桂成 | 申请(专利权)人: | 成都广达新网科技股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 成都九鼎天元知识产权代理有限公司 51214 | 代理人: | 郭彩红 |
地址: | 610041 四川省成都市高新区*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 异步 阻塞 磁盘 文件 读写 速率 控制 方法 | ||
本发明提供了一种基于异步非阻塞的磁盘文件读写速率控制方法,具体方法为:创建一个非阻塞套接字,使用select通过该套接字实现一个定时器,并设置一个默认超时时间;设置文件所在磁盘能够提供的最大稳定读写速率和磁盘文件的读写路径和读写速率;设置每次读写操作的数据块的大小,并计算得到磁盘文件读写所需要的时间;根据所设置的磁盘文件的读写路径,以非阻塞方式打开该读写路径中的文件,并将该文件句柄添加到select的事件监视队列中,在工作线程中对磁盘文件读写超时和读写操作完成进行后续处理。通过采用非阻塞的磁盘文件读写操作与异步事件通知的方法,实现了对磁盘文件精准和可靠的读写速率控制。
技术领域
本发明涉及一种磁盘文件读写速率控制方法,特别是涉及一种基于异步非阻塞的磁盘文件读写速率控制方法,在非阻塞的磁盘文件读写过程中实现对速率的控制。
背景技术
在项目应用环境中,我们需要磁盘提供稳定的文件读写速率并能够对读写速率进行精准控制。在对多个磁盘文件同时进行读写时,会出现读写速率有的较快有的较慢或者时快时慢的情况。这种情况发生在VOD点播系统中流媒体服务器边下载节目文件边提供节目流推送的过程中时,如果节目文件所在服务器不能提供稳定的下载速率,将导致流媒体服务器无法按节目码率推送文件内容到点播客户端,进一步导致点播客户端视频画面和声音出现停顿现象,严重影响用户观看效果。因此,节目文件服务器必须为每个下载的节目文件提供稳定的下载速率。同时,节目文件服务器需要具备对大量文件的高并发下载提供稳定的速率控制能力。
要对磁盘文件读写速率进行精准控制需要一个高精度的定时器。由于系统定时器的实现及使用机制会导致其存在毫秒级的误差,这种误差的叠加会严重影响控制速率的准确性。在这种情况下,同时进行大量文件的读写操作会使对速率准确而稳定的控制变得非常困难。因此,常规的技术方法难于做到在高并发条件下对磁盘文件读写速率进行准确稳定的控制。
发明内容
本发明要解决的技术问题是提供一种基于异步非阻塞的磁盘文件读写速率控制方法,实现对磁盘文件精准和可靠的读写速率控制。
本发明采用的技术方案如下:一种基于异步非阻塞的磁盘文件读写速率控制方法,具体方法为:
S1、创建一个非阻塞套接字,使用select通过该套接字实现一个定时器,为定时器设置一个默认超时时间;
S2、设置文件所在磁盘能够提供的最大稳定读写速率;
S3、设置磁盘文件的读写路径和读写速率,该磁盘文件的读写速率不大于所述最大稳定读写速率;
S4、设置每次读写操作的数据块的大小,并根据所述磁盘文件的读写速率和每次读写操作的数据块的大小,计算得到磁盘文件读写所需要的时间;
S5、根据所设置的磁盘文件的读写路径,以非阻塞方式打开该读写路径中的文件,并将该文件句柄添加到select的事件监视队列中,在工作线程中对磁盘文件读写超时和读写操作完成进行后续处理。
利用select微秒级的超时精度管理磁盘文件在单位时间内的读写操作次数,实现对速率的精准控制。设置文件所在磁盘能够提供的最大稳定读写速率,使控制的总读写速率不超过磁盘文件的最大稳定读写速率,保证速率控制的可靠稳定。
所述方法还包括,根据磁盘能够提供的最大稳定读写速率,和正在进行文件读写操作的所用的速率和,计算该磁盘当前剩余的可用读写速率,以非阻塞方式打开满足条件的其他读写路径中的文件,并将该文件句柄添加到select的事件监视队列中,在工作线程中对磁盘文件读写超时和读写操作完成进行后续处理。
使select工作在可控制的超时循环中,在超时循环中采用非阻塞的磁盘文件读写方式实现对多个磁盘文件的同时读写操作,使磁盘能够达到最大的稳定读写速率,实现并发性、高效性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都广达新网科技股份有限公司,未经成都广达新网科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610998027.3/2.html,转载请声明来源钻瓜专利网。