[发明专利]分布式锁所有权调度方法和装置有效
申请号: | 201710818607.4 | 申请日: | 2017-09-12 |
公开(公告)号: | CN109495528B | 公开(公告)日: | 2022-04-26 |
发明(设计)人: | 朱云锋;杨世泉;林强;蔡景现;陈新进;卢毅军 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | H04L67/14 | 分类号: | H04L67/14;H04L67/10;H04L67/145;H04L67/143 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 冀晓恺 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 所有权 调度 方法 装置 | ||
本申请公开了一种分布式锁所有权调度方法和装置。该方法包括:当主调度服务器检测到其与某个工作机心跳异常且该问题工作机占据分布式锁时,主调度服务器接收所述问题工作机占据的分布式锁的信息;根据该分布式锁的信息获取该分布式锁的归属会话信息,将该归属会话信息加入分布式锁黑名单;当一致性服务器收到来自工作机的心跳包时,获取该心跳包归属的会话信息;判断分布式锁黑名单中是否存在该心跳包的归属会话信息;当存在该会话信本发明在一致性服务器端引入分布式锁黑名单,一致性服务器会主动忽略黑名单中所有分布式锁对应的会话心跳包,最终使得黑名单中的会话过期,进而导致问题工作机释放对应分布式锁所有权。
技术领域
本申请涉及互联网信息领域,特别是涉及一种分布式锁所有权调度方法和装置。
背景技术
大规模云计算场景中,为了保障数据的分布式一致性,数量众多的计算节点往往依赖分布式锁服务来同步各自对某共享资源的访问,或者是协调各计算节点之间的行为动作。典型的分布式锁服务是基于分布式一致性系统提供的ephemeral文件操作接口实现的。具体来看,分布式锁的抢锁是基于创建ephemeral文件操作接口设计的,而分布式锁释放锁则是基于删除ephemeral文件操作接口实现的。目前业界知名的支持分布式锁服务的产品有Google的Chubby,Yahoo的Zookeeper,以及CoreOS的Etcd等等。
分布式一致性系统中的ephemeral文件有所有者(owner)概念,这确保了分布式锁的互斥性。一致性服务器(Quorum Server,即一致性服务组中的服务器)端会记录创建ephemeral文件的客户端(client)进程对应的会话(session)信息,其它客户端进程尝试创建已存在ephemeral文件,一致性服务器通过检查该ephemeral文件归属的会话与尝试创建的客户端进程对应的会话不匹配,则告知客户端创建文件失败,即争抢分布式锁失败。
分布式一致性系统中的ephemeral文件还有生命期概念,这确保了分布式锁的可用性。ephemeral文件生命期,即其归属会话的生命期,依赖客户端进程与一致性服务器定期心跳来更新:客户端进程在本端认定的会话超时时间内没有收到任何来自一致性服务器的心跳包回复,则判定会话超时,确认丢锁;一致性服务器在本端认定的会话超时时间内没有接收到任何来自客户端进程心跳包,则判定会话超时,主动删除锁文件,释放该分布式锁所有权。
在大规模云计算环境中,很多服务存在如下应用场景:一个主调度服务器(master)调度不同工作机(worker,也称工作服务机器)加载不同分区(Partition)以提供并发的数据访问,进而提升系统整体服务能力。为了避免一个分区被多个工作机同时加载从而导致数据被写坏,每个被调度的工作机需要争抢对应分区的分布式锁,在获取该分布锁所有权之后方可提供该分区数据的具体访问服务,然后通过定期心跳向主调度服务器汇报服务状态。
实际的分布式并发环境复杂难控。如果工作机机器的负载过高,可能会出现如下情形:工作机与一致性服务器之间心跳正常,即在会话超时前总可以收到心跳包回复,故其一直占据着分区对应的分布式锁。但是,该工作机的业务服务线程因为抢不到CPU资源而无法正常向主调度服务器汇报服务状态,其加载的分区s的访问服务也因此中断。因此,如何在确保分布式锁正确性的前提下,提供一种支持主调度服务器重新调度分布式锁所有权的灵活机制,对于提升云计算场景下典型分布式应用服务的高可用性是十分迫切的需求。
如图1所示,大规模云计算场景中很典型的一个分布式应用场景,一个主调度服务器调度多个工作机来加载不同分区协同提供并发数据访问服务。主调度服务器对接收到的业务访问请求,根据目标分区被调度到的工作机,回复业务客户端应该访问的具体工作机,从而将访问请求转移至具体工作机处理,进而提升整个系统服务能力。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710818607.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种示波器的升级方法及示波器
- 下一篇:业务处理方法、第一设备及第二设备