The embodiment of this application discloses a distributed lock scheduling method and device. The method includes: creating a distributed lock and session corresponding to the service process when the service process is started; if the service process fails and disconnects from the scheduling process of the service process, and the scheduling process restarts and generates a new scheduling process, the new scheduling process obtains the identification information of the service process; The new scheduling process obtains at least one distributed lock associated with the identification information according to the identification information, and obtains at least one historical session associated with the distributed lock according to the at least one distributed lock, which includes the session. The method and the device embodiment can ensure the normal working state of the client and maintain the continuity of the packet data access service of other business clients.
【技术实现步骤摘要】
一种分布式锁调度方法及装置
本申请涉及互联网及云计算
,特别涉及一种分布式锁调度方法及装置。
技术介绍
在分布式一致性系统中,为了保证分布式数据的一致性,通常可以依赖分布式锁服务技术以解决分布在不同计算节点上的客户端进程访问共享资源的问题。分布式锁服务技术已广泛应用于大规模云计算场景中,典型的分布式锁服务技术是基于分布式一致性系统提供的临时文件(Ephemeralfile)操作接口实现的。具体地,分布式锁“抢锁”的实现可以基于创建临时文件操作接口,分布式锁释放锁的实现则可以基于删除所述临时文件操作接口。临时文件的归属性确保分布式锁的互斥性。分布式一致性服务器一般会在第一客户端进程创建临时文件时,记录所述第一客户端进程所对应的会话信息。当有第二客户端进程(第二客户端进程可以为与第一客户端进程步相同的任何客户端进程)尝试创建临时文件时,分布式一致性服务器可以判断所述临时文件归属的会话与所述第二客户端进程对应的会话是否匹配,当判断结果为不匹配时,可以确定所述第二客户端“争抢”分布式锁失败。分布式一致性系统中的临时文件的生命期可以确保分布式锁的可用性。临时文件生命期可以为所述临时文件归属客户端进程所对应会话的时间段。具体地,所述临时文件生命期可以通过客户端进程与分布式一致性服务器之间的定期心跳更新。若客户端进程在客户端认定的会话有效时间内没有收到任何来自分布式一致性服务器的心跳包回复,则可以确定客户端进程所对应的会话超时,客户端进程丢失分布式锁。若分布式一致性服务器在服务器端认定的会话有效时间内没有接收到任何来自客户端进程的心跳包,则可以确定客户端进程所对应 ...
【技术保护点】
1.一种分布式锁调度方法,其特征在于,所述方法包括:当服务进程启动时,创建与所述服务进程对应的分布式锁和会话,所述会话与所述分布式锁相关联,所述分布式锁与所述服务进程的标识信息相关联;若所述服务进程发生故障,并与所述服务进程的调度进程断开连接,且,所述调度进程重新启动,并生成新的调度进程,则所述新的调度进程获取所述服务进程的所述标识信息;所述新的调度进程根据所述标识信息获取与所述标识信息相关联的至少一个分布式锁,并根据所述至少一个分布式锁获取与所述分布式锁相关联的至少一个历史会话,所述至少一个历史会话中包括所述会话。
【技术特征摘要】
1.一种分布式锁调度方法,其特征在于,所述方法包括:当服务进程启动时,创建与所述服务进程对应的分布式锁和会话,所述会话与所述分布式锁相关联,所述分布式锁与所述服务进程的标识信息相关联;若所述服务进程发生故障,并与所述服务进程的调度进程断开连接,且,所述调度进程重新启动,并生成新的调度进程,则所述新的调度进程获取所述服务进程的所述标识信息;所述新的调度进程根据所述标识信息获取与所述标识信息相关联的至少一个分布式锁,并根据所述至少一个分布式锁获取与所述分布式锁相关联的至少一个历史会话,所述至少一个历史会话中包括所述会话。2.根据权利要求1所述的方法,其特征在于,在根据所述分布式锁获取与所述分布式锁相关联的至少一个历史会话之后,所述方法还包括:根据所述至少一个历史会话,释放所述服务进程对所述至少一个分布式锁的所有权。3.根据权利要求1所述的方法,其特征在于,所述标识信息包括所述服务进程所在机器的标识信息,所述标识信息至少包括下述中的一种:主机名称、MAC地址、硬盘序列号、CPU序列号、BIOS编号。4.根据权利要求1或3所述的方法,其特征在于,所述分布式锁与所述服务进程的标识信息相关联包括:所述分布式锁的访问路径信息被设置为包含所述服务进程的标识信息。5.根据权利要求4所述的方法,其特征在于,所述访问路径信息中还包括通用唯一识别码。6.根据权利要求1所述的方法,其特征在于,在所述服务进程发生故障,并与所述服务进程的调度进程断开连接之后,所述方法还包括:当所述服务进程的会话超时时,释放所述服务进程对所述分布式锁的所有权。7.一种分布式锁调度装置,其特征在于,所述装置包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现:当服务进程启动时,创建与所述服务进程对应的分布式锁和会话,所述会话与所述分布式锁相关联,所述分布式锁与所述服务进程的标识信息相关联;若所述服务进程发生故障,并与所述服务进程的调度进程断开连接,且,所述调度进程重新启动,并生成新的调度进程,则所述新的调度进程获取所述服务进程的所述标识信息;所述新的调度进程根据所述标识信息获取与所述标识信息相关联的至少一个分布式锁,并根据...
【专利技术属性】
技术研发人员:陈新进,安凯歌,赵立芳,卢毅军,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。