[发明专利]分布式锁的实现方法、相关设备及系统有效
申请号: | 201710283923.6 | 申请日: | 2017-04-26 |
公开(公告)号: | CN106936931B | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 宋跃忠;侯杰;林程勇;戴龙飞 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 实现 方法 相关 设备 系统 | ||
本申请实施例提供了一种分布式锁的实现方法、相关设备及系统。方法包括:主网络节点接收锁处理消息,对所述锁处理消息进行缓存,然后获取当前缓存的至少两个锁处理消息,并根据当前缓存的所述至少两个锁处理消息生成一条日志信息,向从属于该主网络节点的至少两个从网络节点同步所述日志信息,当确定所述日志信息同步成功后,对所述日志信息中的所述至少两个锁处理消息进行处理。采用本申请,主网络节点可以对锁处理消息进行批量处理,避免主网络节点频繁地同步锁处理消息和接收确认消息所造成的分布式锁性能的急剧下降。
技术领域
本发明涉及电子技术领域,尤其涉及一种分布式锁的实现方法、相关设备及系统。
背景技术
随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。为了解决这样一系列问题,提出了分布式系统的概念。简单来说,分布式系统就是一群独立计算机集合共同对外提供服务,但是对于系统的用户来说,就像是一台计算机在提供服务一样。而在分布式系统中,不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么用户在访问这些资源的时候,往往需要互斥来防止彼此干扰,在这种情况下,便需要使用到分布式锁。
分布式锁是分布式系统的核心组件,是用来控制分布式系统之间同步访问共享资源的一种方式。具体来说,分布式锁的原理就是在操作目标资源之前先获取操作许可,然后再执行操作,如果其他用户同时尝试操作该目标资源将被阻止,直到前一个用户释放许可后,其他用户才能够操作目标资源。
可以看出,分布式锁是保证分布式系统可靠、有序地被操作和运行的重要机制。因此,保证分布式锁的可靠性对于分布式系统的实现有着重要的意义。目前,为了提供可靠的分布式锁,现有技术通常在多个网络节点中存储相同的锁信息,其中一个网络节点作为主网络节点完成分布式锁的业务,其他多个网络节点作为冗余网络节点,当主网络节点出现宕机等故障时,其他冗余网络节点可以代替主网络节点继续完成分布式锁的业务。因此,如何保证实现分布式锁的多个网络节点之间的一致性就显得尤为重要。当前业界使用的主要是基于zookeeper分布式服务框架或者chubby分布式系统构建的分布式锁,而其受限于zookeeper和chubby系统功能和实现的特点,导致分布式锁的性能较低且较难提升,成为分布式系统业务运行的瓶颈。
发明内容
本发明实施例所要解决的技术问题在于,提供一种分布式锁的实现方法、相关设备及系统,提升分布式锁的性能。
本申请第一方面提供了一种分布式锁的实现方法。主网络节点接收锁处理消息,对所述锁处理消息进行缓存,然后获取当前缓存的至少两个锁处理消息,并根据当前缓存的所述至少两个锁处理消息生成一条日志信息,向从属于该主网络节点的至少一个从网络节点同步所述日志信息,当确定所述日志信息同步成功后,对所述日志信息中的所述至少两个锁处理消息进行处理。
在该技术方案中,主网络节点可以对锁处理消息进行批量处理,避免主网络节点频繁地同步锁处理消息和接收确认消息所造成的分布式锁性能的急剧下降。
在第一方面的第一种可能的实现方式中,主网络节点接收所述至少一个从网络节点存储成功所述日志信息后发送的确认消息,根据接收到的所述确认消息的数量,确定所述日志消息是否同步成功。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,主网络节点将所述锁处理消息缓存在消息缓存队列中,所述消息缓存队列中锁处理消息的排序由各个锁处理消息的接收先后顺序确定,当主网络节点确定所述日志信息同步成功后,按照所述消息缓存队列中各锁处理消息的排序依次对所述消息缓存队列中的锁处理消息进行处理。
在该技术方案中,主网络节点可以对锁处理消息进行批量处理的同时,仍然保证对多个锁处理消息的处理顺序不变。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710283923.6/2.html,转载请声明来源钻瓜专利网。