[发明专利]一种分布式锁的实现方法和装置有效
申请号: | 201710569539.2 | 申请日: | 2017-07-13 |
公开(公告)号: | CN107357664B | 公开(公告)日: | 2020-09-08 |
发明(设计)人: | 马怀旭;方浩;赵祯龙 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52;G06F11/07;H04L29/08 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 王康;李丹 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 实现 方法 装置 | ||
本发明实施例公开了一种分布式锁的实现方法和装置,所述方法包括:Sanlock连接存储池,提供分布式锁服务;当存储池出现问题时,所述sanlock调用fence机制,清理存储池上使用资源的进程;清理所述sanlock自身使用存储池上的资源的进程,避免了因为底层存储出现问题造成的进程卡死和重启服务造成的僵尸进程,解决了存储池出现问题之后sanlock fence机制不彻底问题。
技术领域
本发明涉及云计算机技术,尤指一种分布式锁的实现方法和装置。
背景技术
随着计算机技术和网络技术的快速发展,集群系统以其强大的运算能力和健壮的容错机制让其逐步成为计算机行业的焦点。集群中的脑裂现象称为当今亟需解决的问题,因此出现了dlm和sanlock等类型的分布式锁。
DLM(distributed lock manager)分布式锁是基于通信网络,容易受到网络的影响,造成主机fence。
sanlock是基于共享式存储的分布式锁机制,用分布式锁来同步对共享资源的使用,一般用于保证多并发的集群存储的性能,保障存储的IO速度,相比dlm不容易出现fence。但是sanlock的fence机制中,仅仅去清除使用存储池的进程,而sanlock自身依旧占用存储池打开的句柄,如果存储池出现问题之后不再恢复,sanlock会一直有一个线程卡在IO_destroy函数调用之中,在存储池出现问题一段时间之后同样会出现该问题,存储池恢复后重新连接的时候则会一直出现-17错误,一直让重试连接,但是连接不成功;如果重启sanlock服务的话会造成出现僵尸进程,只有重启主机才能解决。
由此可见,在现有技术方案中,存储池失联时容易造成进程卡死和出现僵尸进程,存储池出现问题之后存在sanlock fence机制不彻底问题。
发明内容
为了解决上述技术问题,本发明提供了一种分布式锁的实现方法和装置,可以解决存储池出现问题之后sanlock fence机制不彻底问题。
为了达到本发明目的,一方面,本发明实施例提供了一种分布式锁的实现方法,包括:
Sanlock连接存储池,提供分布式锁服务;
当存储池出现问题时,所述sanlock调用fence机制,清理存储池上使用资源的进程;
清理所述sanlock自身使用存储池上的资源的进程。
与现有技术相比,本发明通过Sanlock连接存储池,提供分布式锁服务;当存储池出现问题时,所述sanlock调用fence机制,清理存储池上使用资源的进程;清理所述sanlock自身使用存储池上的资源的进程,避免了因为底层存储出现问题造成的进程卡死和重启服务造成的僵尸进程,解决了存储池出现问题之后sanlock fence机制不彻底问题。
进一步地,所述Sanlock连接存储池,提供分布式锁服务包括:对每一个需要使用存储池资源的进程在sanlock进行注册,并标注每一个进程所使用的资源。
进一步地,所述当存储池出现问题时,sanlock调用fence机制,清理存储池上使用资源的进程包括:
所述sanlock检测出现问题的存储池,并检测使用所述出现问题的存储池上资源的进程;
当使用所述出现问题的存储池上资源的进程的时长超过设定时间后,所述sanlock调用三级fence机制,清理使用所述出现问题的存储池上资源的进程。
进一步地,所述设定时间包括120s。
进一步地,所述清理所述sanlock自身使用存储池上的资源的进程包括:检测存储池fence原因,根据检测确定出现问题的存储池IO是否悬挂,并在所述出现问题的存储池恢复后对该存储池进行连接时处理悬挂的IO。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710569539.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于磁导航的单向单驱潜伏式AGV
- 下一篇:两轮车防倒安全保护装置