【技术实现步骤摘要】
基于无状态协议维护文件锁的方法、系统、设备及介质
本专利技术涉及文件锁领域,更具体地,特别是指一种基于无状态协议维护文件锁的方法、系统、计算机设备及可读介质。
技术介绍
无状态协议是指一种把每个用户的请求与之前任何请求之间都转换成无关性的独立事务的协议。无状态协议不要求服务器在多个请求期间保留每个用户的信息或状态。无状态的设计简化了服务器端的设计,不必动态分配存储空间以处理进行中的会话。如果客户端在事务处理中间被中断了,系统不必为清理服务器状态而做出响应。无状态协议的一个优点在于管理简单,当服务器出现问题后,客户端可以通过重复发送之前失败的请求,直到服务端对客户端进行响应。但是,无状态协议的缺陷是在每个请求时必须包括附加的信息,这些额外信息需要服务器来解释,特别是在故障场景下,服务端客户端均需要维护用户请求的一些状态信息。NFSv3是一种网络文件系统并且是无状态协议,NFS服务端将不会维护客户端的状态信息。客户端向服务端申请文件锁,服务端发生故障重启或者服务崩溃退出,由于NFSv3无状态,客户端如果重发锁操作 ...
【技术保护点】
1.一种基于无状态协议维护文件锁的方法,其特征在于,包括在服务端执行以下步骤:/n响应于接收到客户端的加锁请求,解析所述加锁请求以确定待加锁的文件,并判断客户端是否有权限访问所述文件;/n响应于客户端有权限访问所述文件,对所述文件进行加锁并判断文件锁的拥有者的状态信息是否正常;/n响应于所述文件锁的拥有者的状态信息正常,判断不同文件锁之间是否存在冲突;以及/n响应于不同文件锁之间存在冲突,对存在冲突的文件锁分配单独的进程。/n
【技术特征摘要】
1.一种基于无状态协议维护文件锁的方法,其特征在于,包括在服务端执行以下步骤:
响应于接收到客户端的加锁请求,解析所述加锁请求以确定待加锁的文件,并判断客户端是否有权限访问所述文件;
响应于客户端有权限访问所述文件,对所述文件进行加锁并判断文件锁的拥有者的状态信息是否正常;
响应于所述文件锁的拥有者的状态信息正常,判断不同文件锁之间是否存在冲突;以及
响应于不同文件锁之间存在冲突,对存在冲突的文件锁分配单独的进程。
2.根据权利要求1所述的方法,其特征在于,所述对所述文件进行加锁并判断文件锁的拥有者的状态信息是否正常包括:
判断文件锁的持久性信息是否正常;以及
响应于所述文件锁的持久性信息正常,基于所述持久性信息确定所述文件锁的拥有者。
3.根据权利要求1所述的方法,其特征在于,所述对所述文件进行加锁并判断文件锁的拥有者的状态信息是否正常包括:
基于进程对文件进行加锁操作,并对不同进程对应的文件锁设置不同的标识。
4.根据权利要求3所述的方法,其特征在于,所述判断不同文件锁之间是否存在冲突包括:
判断同一个进程中不同文件锁之间的标识是否一致。
5.一种基于无状态协议维护文件锁的系统,其特征在于,包括:
解析模块,配置用于响应于接收到客户端的加锁请求,解析所述加锁请求以确定待加锁的文件,并判断客户端是...
【专利技术属性】
技术研发人员:臧林劼,
申请(专利权)人:苏州浪潮智能科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。