【技术实现步骤摘要】
分布式锁迁移方法、装置及电子设备、存储介质
本公开涉及分布式锁
,尤其涉及一种分布式锁迁移方法、装置及电子设备、存储介质。
技术介绍
当前互联网系统通常存在分布式部署的情况,分布式部署可以为互联网系统带来性能和效率上的提升。当某个资源在多系统之间具有共享性时,为了保证大家访问这个资源数据是一致的,那么就必须要求在同一时刻只能被一个用户终端处理,不能并发的执行。分布式锁是控制分布式系统之间同步访问共享资源的一种方式。在分布式系统中,常常需要协调它们的动作。如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防止彼此干扰来保证一致性,在这种情况下,便需要使用到分布式锁。分布式锁通过锁机制来让多客户端互斥的对共享资源进行访问。现有技术中,通常利用锁协调服务实现分布式锁,即利用锁协调服务支撑分布式锁的使用。但是随着业务的增长,锁协调服务支撑的锁数量越来越多,同时争抢一个锁的客户端越来越多,会导致锁协调服务的性能逐渐无法满足业务需求,严重时甚至导致锁协调服务宕机。 ...
【技术保护点】
1.一种分布式锁迁移方法,其特征在于,应用于服务端,所述方法包括:/n向多个锁协调服务中的每个锁协调服务分别分配多个分布式锁;/n如果其中一个运行状态的所述锁协调服务的负载值大于预设阈值时,则提取该锁协调服务配置的指定数量的分布式锁迁出至负载值小于预设阈值的另一个锁协调服务,其中,每个所述锁协调服务被预先配置有多个分布式锁;/n将被配置于新迁入的锁协调服务的所述指定数量的分布式锁的状态标记为准备状态,并通知持有所述指定数量的分布式锁的用户终端释放锁;/n在检测到所述指定数量的分布式锁被释放后,将被配置于迁出的锁协调服务的所述指定数量的分布式锁的状态从生效状态切换为失效状态; ...
【技术特征摘要】
1.一种分布式锁迁移方法,其特征在于,应用于服务端,所述方法包括:
向多个锁协调服务中的每个锁协调服务分别分配多个分布式锁;
如果其中一个运行状态的所述锁协调服务的负载值大于预设阈值时,则提取该锁协调服务配置的指定数量的分布式锁迁出至负载值小于预设阈值的另一个锁协调服务,其中,每个所述锁协调服务被预先配置有多个分布式锁;
将被配置于新迁入的锁协调服务的所述指定数量的分布式锁的状态标记为准备状态,并通知持有所述指定数量的分布式锁的用户终端释放锁;
在检测到所述指定数量的分布式锁被释放后,将被配置于迁出的锁协调服务的所述指定数量的分布式锁的状态从生效状态切换为失效状态;
将被配置于新迁入的锁协调服务的所述指定数量的分布式锁从准备状态切换为生效状态。
2.根据权利要求1所述的方法,其特征在于,在所述提取该锁协调服务配置的指定数量的分布式锁迁出至负载值小于预设阈值的另一个锁协调服务后,所述方法还包括:
根据所述指定数量的分布式锁的ID、新迁入的所述另一个锁协调服务的ID,将迁出的指定数量的分布式锁与锁协调服务的配置关系重新配置,其中,所述重新配置的过程包括:解除所述指定数量的分布式锁的ID与迁出的锁协调服务的ID的配置关系;且将所述指定数量的分布式锁的ID与所述新迁入的所述另一个锁协调服务的ID建立配置关系。
3.根据权利要求1所述的方法,其特征在于,在所述向多个锁协调服务中的每个锁协调服务分别分配多个分布式锁之后,所述方法还包括:
接收用户终端发出的其中一个分布式锁未标记有状态的异常提示及未标记有状态的分布式锁的ID;
将未标记有状态的分布式锁的ID发送至配置终端显示;其中,所述配置终端为对分布式锁的状态进行标记的终端设备;
接收所述配置终端发送的标记指令,对未标记有状态的分布式锁的状态进行标记。
4.根据权利要求1所述的方法,其特征在于,所述如果其中一个所述锁协调服务的负载值大于预设阈值时,则将指定数量的分布式锁迁出至另一个负载值小于预设阈值的锁协调服务包括:
如果其中一个所述锁协调服务的负载值大于预设阈值时,则计算负载值与所述预设阈值的差值;
根据所述差值从预设的关系映射表中,查询出指定数量的分布式锁,其中,所述关系映射表中记录有所述不同差值分别与分布式锁的数量的一一对应关系;
将所述指定数量的分布式锁迁出至另一个负载值小于预设阈值的锁协调服务。
5.根据权利要求1所述的方法,其特征在于,所述另一个负载值小于预设阈值的锁协调服务为:在所述指定数量的分布式锁迁入后处于运行状态时,负载值小于预设阈值的锁协调服务。
6.一种分布式锁获取方法,其特征在于,应用于用户终端,所...
【专利技术属性】
技术研发人员:王至前,
申请(专利权)人:北京达佳互联信息技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。