[发明专利]一种文件处理方法及装置在审
申请号: | 201510779220.3 | 申请日: | 2015-11-13 |
公开(公告)号: | CN105353987A | 公开(公告)日: | 2016-02-24 |
发明(设计)人: | 王喆;郑劭馨;付根希;杨浩;苗艳超;惠润海 | 申请(专利权)人: | 曙光信息产业股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京新知远方知识产权代理事务所(普通合伙) 11397 | 代理人: | 艾凤英 |
地址: | 300384 天津市西青区华*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 文件 处理 方法 装置 | ||
技术领域
本申请涉及计算机技术领域,尤其涉及一种文件处理方法及装置。
背景技术
网络附属存储(NAS,NetworkAttachedStorage)技术是一种成熟的、高效的、低成本的存储技术,通常包括存储设备、系统软件和文件共享服务等。samba是一个基于信息服务块(SMB,ServerMessageBlock)协议的提供文件共享服务的开源软件。作为一个成熟的开源软件,samba很好的解决了大部分应用场景的需求,但是,对于一些高并发、低延时的场景需求,samba的表现不尽如人意,经常出现延迟、CPU利用率低等情况。
现有技术不足在于:
现有samba软件在一些高并发、低延时的场景下经常出现延迟、CPU利用率低等情况。
发明内容
本申请实施例提出了一种文件处理方法及装置,以解决现有技术中samba软件在一些高并发、低延时的场景下经常出现延迟、CPU利用率低等情况的技术问题。
本申请实施例提供了一种文件处理方法,包括如下步骤:
主线程接收客户端发送的操作请求;所述操作请求中包括操作的文件标识;
所述主线程根据操作请求中的文件标识,将所述操作请求挂入所述文件,所述文件在待处理文件队列中依次存放;
当所述待处理文件队列中有文件需要处理时,工作线程从所述待处理文件队列中获取所述文件,逐个处理所述文件的操作请求。
本申请实施例提供了一种文件处理装置,包括:
接收模块,用于主线程接收客户端发送的操作请求;所述操作请求中包括操作的文件标识;
整合模块,用于所述主线程根据操作请求中的文件标识,将所述操作请求挂入所述文件,所述文件在待处理文件队列中依次存放;
处理模块,用于当所述待处理文件队列中有文件需要处理时,工作线程从所述待处理文件队列中获取所述文件,逐个处理所述文件的操作请求。
有益效果如下:
本申请实施例所提供的文件处理方法及装置,主线程接收客户端发送的操作请求;所述操作请求中包括操作的文件标识;所述主线程根据操作请求中的文件标识,将所述操作请求挂入所述文件,所述文件在待处理文件队列中依次存放;当所述待处理文件队列中有文件需要处理时,工作线程从所述待处理文件队列中获取所述文件,逐个处理所述文件的操作请求。由于本申请实施例中由主线程对操作请求进行了整合,将针对同一文件的操作请求整合在一起,通过对相同文件处理串行化的方式排除写操作的竞态条件,能够充分利用预读与磁盘带宽,既不会对通用场景产生明显的负面影响,又能满足高并发与低延迟场景的性能需求,可以有效的均衡高并发场景下的操作请求。
附图说明
下面将参照附图描述本申请的具体实施例,其中:
图1示出了本申请实施例中文件处理方法实施的流程示意图;
图2示出了本申请实施例中samba读写模型的原理示意图;
图3示出了本申请实施例中文件处理装置的结构示意图。
具体实施方式
为了使本申请的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。并且在不冲突的情况下,本说明中的实施例及实施例中的特征可以互相结合。
发明人在发明过程中注意到:
通过对samba软件代码的分析,发现主要原因出在读写线程模型上;
对于写操作,多线程写相同文件引入了竞态条件,导致了大量的线程切换,不仅提高了延迟,而且降低了CPU的利用率;
对于读操作,多线程读相同文件不能最大限度的利用预读功能与磁盘带宽。
针对上述不足,本申请实施例提出了一种文件处理方法及装置,下面进行说明。
图1示出了本申请实施例中文件处理方法实施的流程示意图,如图所示,所述文件处理方法可以包括如下步骤:
步骤101、主线程接收客户端发送的操作请求;所述操作请求中包括操作的文件标识;
步骤102、所述主线程根据操作请求中的文件标识,将所述操作请求挂入所述文件,所述文件在待处理文件队列中依次存放;
步骤103、当所述待处理文件队列中有文件需要处理时,工作线程从所述待处理文件队列中获取所述文件,逐个处理所述文件的操作请求。
当用户需要对某个文件进行操作时,可以通过客户端显示屏发出命令,由所述客户端向存储系统发送操作请求,所述操作请求中可以携带有需要进行操作的文件的标识。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业股份有限公司,未经曙光信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510779220.3/2.html,转载请声明来源钻瓜专利网。