一种应用于云存储系统的多线程nas网关的制作方法

文档序号:9508501阅读:523来源:国知局
一种应用于云存储系统的多线程nas网关的制作方法
【技术领域】
[0001]本发明涉及云存储技术领域,特别涉及一种应用于云存储系统的多线程NAS网关。
【背景技术】
[0002]目前,云存储系统在接收到Windows客户端发送的数据读写请求后,通常是采用CIFS协议(CIFS,即Common Internet File System,通用网络文件系统)来对上述数据读写请求进行处理的。
[0003]然而,CIFS协议是一种基于单线程的协议,当云存储系统面临Windows客户端同时段发起的多个数据读写请求时,由于只能进行单线程的请求处理,从而导致大部分的请求需要长时间处于等待状态,既对用户体验造成不良影响,也限制了云存储系统的整体的读写性能。
[0004]综上所述可以看出,当Windows客户端在同时段向云存储系统发起多个数据读写请求时,如何避免大部分请求需要长时间处于等待状态的局面是目前亟待解决的问题。

【发明内容】

[0005]有鉴于此,本发明的目的在于提供一种应用于云存储系统的多线程NAS网关,当Windows客户端在同时段向云存储系统发起多个数据读写请求时,避免了大部分请求需要长时间处于等待状态的局面,从而提升了用户体验和云存储系统整体的读写性能。其具体方案如下:
[0006]—种应用于云存储系统的多线程NAS网关,所述云存储系统包括N个文件,所述多线程NAS网关包括读写请求分发模块、线程集和存储队列集;所述线程集包括N个线程,所述存储队列集包括N个存储队列,所述N个文件与所述N个存储队列一一对应,所述N个存储队列与所述N个线程一一对应,N为不小于2的正整数;其中,
[0007]所述读写请求分发模块,用于将针对任一所述文件的读写请求消息存储至与该文件对应的存储队列;
[0008]所述N个线程,用于对所述N个存储队列中存储的读写请求消息进行并行处理;其中,任一所述线程用于从与自身对应的存储队列中获取相应的读写请求消息,并根据该读写请求消息,对相应的文件进行读写操作处理。
[0009]优选的,所述读写请求分发模块,具体用于当获取到针对任一所述文件的读写请求消息后,利用哈希算法,从所述N个存储队列中找出与该文件对应的存储队列,并将针对该文件的读写请求消息存储至与该文件对应的存储队列。
[0010]优选的,所述多线程NAS网关还包括:
[0011]容量监测模块,用于对所述N个存储队列中每一所述存储队列的存储空间的使用率进行监测。
[0012]优选的,所述多线程NAS网关还包括:
[0013]动态扩容模块,用于与所述容量监测模块连接,当任一所述存储队列的存储空间的使用率达到预设值后,对该存储队列的存储空间进行扩容处理。
[0014]优选的,所述动态扩容模块,具体用于当任一所述存储队列的存储空间的使用率达到预设值后,按照预设的容量扩展倍数,对该存储队列的存储空间进行动态扩容处理。
[0015]优选的,所述预设的容量扩展倍数为2的K次方,K为正整数。
[0016]优选的,所述多线程NAS网关还包括:
[0017]手动扩容模块,用于为用户提供扩容接口,当任一所述存储队列的存储空间的使用率达到预设值后,获取用户通过所述扩容接口输入的扩容指令,以利用该扩容指令对该存储队列的存储空间进行相应的扩容处理。
[0018]优选的,所述扩容指令含有的参数包括扩容倍数。
[0019]优选的,所述多线程NAS网关还包括:
[0020]使用率显示模块,用于对每一所述存储队列的存储空间的使用率进行显示。
[0021]优选的,所述多线程NAS网关还包括:
[0022]预警信息生成模块,用于与所述容量监测模块连接,当任一所述存储队列的存储空间的使用率达到预设值后,生成相应的预警信息。
[0023]本发明中,多线程NAS网关(NAS,即Network Attached Storage,网络附属存储)包括读写请求分发模块、N个线程和N个存储队列,云存储系统中的N个文件与N个存储队列一一对应,N个存储队列与N个线程一一对应,N为不小于2的正整数;其中,读写请求分发模块可用于将针对任一文件的读写请求消息存储至与该文件对应的存储队列;上述N个线程用于对N个存储队列中存储的读写请求消息进行并行处理;其中,任一线程用于从与自身对应的存储队列中获取相应的读写请求消息,并根据该读写请求消息,对相应的文件进行读写操作处理。可见,本发明中,云存储系统的N个文件与N个存储队列一一对应,读写请求分发模块可用于将针对任一文件的读写请求消息存储至与该文件对应的存储队列,而上述N个线程则可用于对N个存储队列中存储的读写请求消息进行并行处理。这样当Windows客户端在同时段向云存储系统发起多个数据读写请求时,本发明提供的多线程NAS网关可对上述多个数据读写请求进行并行处理,从而避免了大部分请求需要长时间处于等待状态的局面,提升了用户体验和云存储系统整体的读写性能。
【附图说明】
[0024]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0025]图1为本发明实施例公开的一种多线程NAS网关的应用结构示意图;
[0026]图2为本发明实施例公开的一种具体的多线程NAS网关的应用结构示意图。
【具体实施方式】
[0027]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0028]本发明实施例公开了一种应用于云存储系统的多线程NAS网关,云存储系统包括N个文件。参见图1所示,本实施例中,多线程NAS网关包括读写请求分发模块11、存储队列集12和线程集13 ;线程集13包括N个线程,存储队列集12包括N个存储队列,N个文件与N个存储队列一一对应,N个存储队列与N个线程一一对应,N为不小于2的正整数;其中,
[0029]读写请求分发模块11,用于将针对任一文件的读写请求消息存储至与该文件对应的存储队列;
[0030]N个线程,用于对N个存储队列中存储的读写请求消息进行并行处理;其中,任一线程用于从与自身对应的存储队列中获取相应的读写请求消息,并根据该读写请求消息,对相应的文件进行读写操作处理。
[0031]本发明实施例中,多线程NAS网关包括读写请求分发模块、N个线程和N个存储队列,云存储系统中的N个文件与N个存储队列一一对应,N个存储队列与N个线程一一对应,N为不小于2的正整数;其中,读写请求分发模块可用于将针对任一文件的读写请求消息存储至与该文件对应的存储队列;上述N个线程用于对N个存储队列中存储的读写请求消息进行并行处理;其中,任一线程用于从与自身对应的存储队列中获取相应的读写请求消息,并根据该读写请求消息,对相应的文件进行读写操作处理。
[0032]可见,本
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1