[发明专利]一种请求处理方法、装置、设备及存储介质在审
申请号: | 202010108904.1 | 申请日: | 2020-02-21 |
公开(公告)号: | CN111371848A | 公开(公告)日: | 2020-07-03 |
发明(设计)人: | 李宏伟;张东 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F9/448;G06F9/54 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 侯珊 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 请求 处理 方法 装置 设备 存储 介质 | ||
本发明公开了一种基于分布式存储系统的请求处理方法、装置、设备及计算机可读存储介质,基于IO调度层;在本方案中,对于应用层发送的SCSI请求,如果该SCSI请求对应的待处理数据大小未超过预定阈值,则并不发送至软件栈,而是先发送至IO调度层,通过IO调度层对接收的请求进行合并处理后,再发送至软件栈,以通过消息路由系统发送至对应的服务器节点;这种通过IO调度层对SCSI请求进行处理后,再发送至软件栈的方式,可以通过合并请求的方式减少经过软件栈的交互次数,提高存储系统的吞吐量。
技术领域
本发明涉及分布式存储领域,更具体地说,涉及一种基于分布式存储系统的请求处理方法、装置、设备及计算机可读存储介质。
背景技术
分布式存储系统是由大量标准服务器组成的集群,对外作为整体提供存储功能,而数据实际上分布在每个服务器上,本质上是一种软件定义存储。就具体的分布式存储系统所提供的iscsi块存储功能实现而言,一般是由iscsi target软件栈接收到的SCSI命令后直接解包,然后通过消息路由系统交给数据所在服务器节点处理,然后再经路由系统将数据返回给上层应用。可以看出,对于分布式系统,它由多层软件栈组成,每个SCSI请求需要跨越多个软件栈甚至跨越主机,因此对单个SCSI请求的处理要慢于传统的集中式存储。
发明内容
本发明的目的在于提供一种基于分布式存储系统的请求处理方法、装置、设备及计算机可读存储介质,以提高SCSI请求的处理速度。
为实现上述目的,本发明提供一种基于分布式存储系统的请求处理方法,基于IO调度层,所述请求处理方法包括:
接收应用层发送的SCSI请求;
若与所述SCSI请求对应的待处理数据大小未超过预定阈值,则利用调度策略对已接收的SCSI请求进行解析,执行请求合并处理,并对处理后的请求分别进行封装;
将封装的请求发送至软件栈,以使软件栈将封装的请求通过消息路由系统发送至对应的服务器节点。
其中,所述接收应用层发送的SCSI请求,包括:
通过IO调度层的调度队列接收应用层发送的SCSI请求。
其中,所述IO调度层包括IO调度接口,所述IO调度接口以插件的形式接入不同的调度策略。
其中,所述利用调度策略对已接收的SCSI请求进行解析,包括:
利用调度策略对当前时间周期内已接收的SCSI请求进行解析。
其中,若与所述SCSI请求对应的待处理数据大小超过预定阈值,则所述请求处理方法还包括:
判断与所述SCSI请求对应的待处理数据是否为多副本数据;
若是,则根据所述待处理数据的副本数量将所述SCSI请求拆分为多个SCSI子请求,并将每个SCSI子请求封装后发送至软件栈,以使软件栈将封装的请求通过消息路由系统发送至每个SCSI子请求对应的服务器节点。
其中,所述利用调度策略对已接收的SCSI请求进行解析,执行请求合并处理,包括:
若存在至少两个SCSI请求对应的地址首位相连,则将地址首位相连的SCSI请求合并为一个请求;
若存在至少两个SCSI请求对应的存储对象为同一个存储对象,则将同一个存储对象的SCSI请求合并为一个请求;
若存在至少两个SCSI请求对应的服务器节点为同一个服务器节点,则将同一个服务器节点的SCSI请求合并为一个请求。
为实现上述目的,本发明进一步提供一种基于分布式存储系统的请求处理装置,基于IO调度层,所述请求处理装置包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010108904.1/2.html,转载请声明来源钻瓜专利网。