[发明专利]分布式块存储的IO请求的处理方法和装置有效
申请号: | 201611201071.3 | 申请日: | 2016-12-22 |
公开(公告)号: | CN106776032B | 公开(公告)日: | 2018-07-03 |
发明(设计)人: | 董冠军;游峰;王劲凯;姜金瑞 | 申请(专利权)人: | 北京华云网际科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京智晨知识产权代理有限公司 11584 | 代理人: | 张婧 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 块存储 数据卷 方法和装置 卷控制器 可用 系统处理效率 操作指令 任务队列 携带 客户 访问 | ||
本发明实施例提供了一种分布式块存储的IO请求的处理方法和装置。所述分布式块存储的IO请求的处理方法,包括:接收到客户端的IO请求;所述IO请求携带待访问的数据卷以及对所述数据卷的操作指令;获取所述数据卷所在的至少两个节点;在所述至少两个节点中,选择一个节点,作为卷控制器节点;获取所述卷控制器节点对应的至少两个可用CPU;在所述至少两个可用CPU中,选择一个CPU;将所述IO请求发送给选择的所述CPU,使得所述IO请求加入到选择的所述CPU的任务队列中,等待选择的所述CPU根据所述IO请求进行处理。本发明能够提高系统处理效率。
技术领域
本发明涉及分布式块存储领域,尤其涉及一种分布式块存储的IO请求的处理方法和装置。
背景技术
在并发程序设计中,如何进行共享资源的同步访问是个关键的设计问题,影响到最终系统的架构、可靠性和性能。在高性能网络服务器中,有各种同步机制,如信号量、读写锁、自旋锁,但是都严重地影响到程序的并发处理能力。因为都可以处理并发IO操作,但是当并发触发锁时,存在IO在排队但是CPU资源没有发挥到最大的情况,导致资源浪费、性能不优。
例如,在并发IO发起时候,先做同步机制,如卷锁,让每个IO做排队。然后,顺序每一个IO来随机选择CPU核来处理,待CPU核处理完毕,释放下一个IO的锁来处理下一个IO。这样,在上一个IO处理完,下一个IO释放锁之前的间隔,CPU核就存在空闲情况。因此,存在资源浪费,CPU核不能发挥最大处理能力,导致性能不优。
发明内容
本发明的实施例提供了一种分布式块存储的IO请求的处理方法和装置,能够提高系统处理效率。
为了实现上述目的,本发明采取了如下技术方案。
一种分布式块存储的IO请求的处理方法,包括:
接收到客户端的IO请求;所述IO请求携带待访问的数据卷以及对所述数据卷的操作指令;
获取所述数据卷所在的至少两个节点;
在所述至少两个节点中,选择一个节点,作为卷控制器节点;
获取所述卷控制器节点对应的至少两个可用CPU;
在所述至少两个可用CPU中,选择一个CPU;
将所述IO请求发送给选择的所述CPU,使得所述IO请求加入到选择的所述 CPU的任务队列中,等待选择的所述CPU根据所述IO请求进行处理。
一种分布式块存储的IO请求的处理装置,包括:
接收单元,接收到客户端的IO请求;所述IO请求携带待访问的数据卷以及对所述数据卷的操作指令;
第一获取单元,获取所述数据卷所在的至少两个节点;
第一选择单元,在所述至少两个节点中,选择一个节点,作为卷控制器节点;
第二获取单元,获取所述卷控制器节点对应的至少两个可用CPU;
第二选择单元,在所述至少两个可用CPU中,选择一个CPU;
发送单元,将所述IO请求发送给选择的所述CPU,使得所述IO请求加入到选择的所述CPU的任务队列中,等待选择的所述CPU根据所述IO请求进行处理。
由上述本发明的实施例提供的技术方案可以看出,本发明实施例中,在分布式块存储系统中,引入卷控制器和CPU调度器的处理,来控制每个卷的并发访问,不再使用卷锁来处理IO操作排序,而是交由CPU来处理,CPU会按照接收请求的顺序来处理,这样就不需要同步机制,可以提高系统的IO处理能力,进而优化性能。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京华云网际科技有限公司,未经北京华云网际科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611201071.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据发送方法及装置
- 下一篇:一种嵌入式设备的资源利用方法及系统