[发明专利]一种分布式文件系统中文件锁的处理方法、装置及设备有效
申请号: | 201710867711.2 | 申请日: | 2017-09-22 |
公开(公告)号: | CN107423454B | 公开(公告)日: | 2021-01-12 |
发明(设计)人: | 张浩 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F16/176 | 分类号: | G06F16/176;G06F16/182 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 文件系统 文件 处理 方法 装置 设备 | ||
本发明实施例公开了一种分布式文件系统中文件锁的处理方法、装置、设备及计算机可读存储介质,包括接受NAS客户端发送的锁请求;判断锁请求的类型是否为阻塞锁请求,如果是,则将阻塞锁请求添加至锁请求队列中;通过预先建立的锁处理线程组判断锁请求队列是否为空,如果否,则利用锁处理线程组、按照预设顺序从锁队列中获取相应的阻塞锁请求,并将获取的阻塞锁请求发送至文件系统。本发明实施例在使用过程中,避免了多个阻塞锁请求都存在互斥时占用NSA服务端中原有线程的问题,从而提高了锁请求及其他请求的处理速度,提高了系统的稳定性。
技术领域
本发明实施例涉及分布式文件系统技术领域,特别是涉及一种分布式文件系统中文件锁的处理方法、装置、设备及计算机可读存储介质。
背景技术
对于分布式文件系统来说,为了便于客户端访问,会通过NAS(Network AttachedStorage,网络附属存储)协议共享出导出目录,然后客户端通过NAS协议挂载到文件系统上,进而对文件系统进行访问和操作,对于多客户端访问时,就会涉及并发访问的逻辑处理。文件锁是一种常用的、用来保证多客户端并发访问的方式,文件锁分为阻塞锁和非阻塞锁,对于非阻塞锁,当NAS客户端发起非阻塞锁的请求,如果NAS服务端判断已经授权的锁中与该锁互斥,则会返回失败给客户端,否则返回成功给NAS客户端。而对于阻塞锁,如果NAS服务端发现已经授权的锁与该锁互斥,则会阻塞处理该锁请求的线程,并且该线程会一直被阻塞,直至互斥的锁被释放掉。如果NAS客户端发起的多个阻塞锁请求都有互斥,则会导致很多线程被卡住,由于现有技术中NAS服务端用来处理锁请求的线程是固定的,所以多线程的阻塞会影响对其他请求的处理效率,从而影响系统的稳定性。
因此,如何提供一种解决上述技术问题的分布式文件系统中文件锁的处理方法、装置、设备及计算机可读存储介质成为本领域的技术人员目前需要解决的问题。
发明内容
本发明实施例的目的是提供一种分布式文件系统中文件锁的处理方法、装置、设备及计算机可读存储介质,在使用过程中避免了多个阻塞锁请求都存在互斥时占用NSA服务端中原有线程的问题,从而提高了锁请求及其他请求的处理速度,提高了系统的稳定性。
为解决上述技术问题,本发明实施例提供了一种分布式文件系统中文件锁的处理方法,包括:
接受NAS客户端发送的锁请求;
判断所述锁请求的类型是否为阻塞锁请求,如果是,则将所述阻塞锁请求添加至锁请求队列中;
通过预先建立的锁处理线程组判断所述锁请求队列是否为空,如果否,则利用所述锁处理线程组、按照预设顺序从所述锁队列中获取相应的阻塞锁请求,并将获取的阻塞锁请求发送至文件系统。
可选的,还包括:
接收所述文件系统返回的响应信息,并将所述响应信息返回至所述NAS客户端。
可选的,还包括:
依据所述响应信息对文件锁列表中相应锁的状态信息进行更新。
可选的,所述将所述阻塞锁请求添加至锁请求队列中之后还包括:
将与所述阻塞锁请求对应的阻塞状态码返回至所述NAS客户端。
本发明实施例相应的提供了一种分布式文件系统中文件锁的处理装置,包括:
接收模块,用于接受NAS客户端发送的锁请求;
第一判断模块,用于判断所述锁请求的类型是否为阻塞锁请求,如果是,则触发添加模块;
所述添加模块,用于将所述阻塞锁请求添加至锁请求队列中;
第二判断模块,用于通过预先建立的锁处理线程组判断所述锁请求队列是否为空,如果否,则触发发送模块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710867711.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:自动货车篷布机
- 下一篇:一种用于半挂车上的可拆卸式篷布架