[发明专利]一种分布式存储协议中请求处理保序的方法及装置有效
申请号: | 201710452743.6 | 申请日: | 2017-06-15 |
公开(公告)号: | CN107277128B | 公开(公告)日: | 2020-09-22 |
发明(设计)人: | 孟祥瑞 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 存储 协议 请求 处理 方法 装置 | ||
本发明公开了一种分布式存储协议中请求处理保序的方法及装置,该方法包括:在NFS协议的线程组模块中,给每个线程对应配置一个请求队列,在请求队列中存放单个的inode节点;采用远程调用协议RPC接收写请求,解析出写请求中的inode信息;按照预设算法将写请求添加到对应的请求队列的inode节点中;唤醒写请求对应的线程,使线程按照均衡轮询机制,循环处理请求队列中的每个inode节点中的写请求。该方法实现避免文件空洞风险,提高安全性。
技术领域
本发明涉及的分布式存储技术领域,特别是涉及一种分布式存储协议中请求处理保序的方法及装置。
背景技术
目前,在分布式NAS存储中,一般分为两大部分,NAS协议服务端与存储系统;NAS协议服务端最常用的是NFS协议,NFS服务端负责与NFS客户端交互,提供文件服务给客户。当NFS客户端写数据时,基于缓存机制,会按照顺序连续发送缓存后的脏数据到NFS服务端处理;NFS服务端是多线程机制,多个线程同时处理请求,把不同的写请求交给下层存储系统处理;这样机制下,客户端写单个文件时,按照顺序连续发送写请求到服务端,但服务端会多线程并发处理这些请求,一,会导致不保序,文件存在出现空洞的风险,安全性较低;二,由于同一文件并发处理,会有资源互斥访问,性能抖动大,在媒资场景恒定码流情况下,会有丢帧风险。
发明内容
本发明的目的是提供一种分布式存储协议中请求处理保序的方法及装置,以实现避免文件空洞风险,提高安全性。
为解决上述技术问题,本发明提供一种分布式存储协议中请求处理保序的方法,该方法包括:
在NFS协议的线程组模块中,给每个线程对应配置一个请求队列,在请求队列中存放单个的inode节点;
采用远程调用协议RPC接收写请求,解析出写请求中的inode信息;
按照预设算法将写请求添加到对应的请求队列的inode节点中;
唤醒写请求对应的线程,使线程按照均衡轮询机制,循环处理请求队列中的每个inode节点中的写请求。
优选的,所述预设算法包括哈希算法或者轮询算法。
优选的,所述解析出写请求中的inode信息之后,还包括:
解析写请求获取写偏移信息。
优选的,所述按照预设算法将写请求添加到对应的请求队列的inode节点中,包括:
若请求队列中已存在相同的写请求,根据写偏移信息将接收到的写请求放入同一个inode节点的请求链表对应位置中;
若请求队列中没有相同的写请求,将写请求直接放入请求队列尾端。
本发明还提供一种分布式存储协议中请求处理保序的装置,用于实现上述方法,包括:
配置模块,用于在NFS协议的线程组模块中,给每个线程对应配置一个请求队列,在请求队列中存放单个的inode节点;
解析模块,用于采用远程调用协议RPC接收写请求,解析出写请求中的inode信息;
添加模块,用于按照预设算法将写请求添加到对应的请求队列的inode节点中;
循环模块,用于唤醒写请求对应的线程,使线程按照均衡轮询机制,循环处理请求队列中的每个inode节点中的写请求。
优选的,所述预设算法包括哈希算法或者轮询算法。
优选的,所述解析模块还用于解析写请求获取写偏移信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710452743.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种GAN图像处理方法及系统
- 下一篇:一种视频及图像中目标任意角度标记方法