The invention discloses a master-slave switching method and device for task scheduling instances. Including a specific embodiment of the method: at least two preset for instance scheduling tasks according to their election cycle and the opening time to judgewhether the election time, the examples of the various attributes including case identification, election cycle, whether to participate in the election the main instance and master slave state; if the arrival time of the election for example, the attribute information in the main instance election update pre created in the database and instance information table records information; if the update is successful, then update the successful examples of master-slave state dominated state, among other examples besides the master-slave state update an instance of the success of the implementation of the task scheduling work from the state; examples of master-slave state the main state. The method implements the master-slave handover of the task scheduling instance simply and efficiently.
【技术实现步骤摘要】
本申请涉及计算机
,具体涉及互联网
,尤其涉及任务调度实例的主从切换方法和装置。
技术介绍
在需要分布式处理基于时间序列的高并发任务的系统中,如果执行任务调度工作的程序实例出现故障,可能会导致任务遗漏,甚至整个系统的不可用。因此,为了确保每个任务都不遗漏的按时执行,需要考虑使用至少两个负责任务调度的程序实例。当处于工作状态的程序实例发生故障时,其他程序实例中的一个能够自动接替它的工作,使系统正常运行。同时,为了保证同一时间周期的任务不重复执行,则需要满足同一时间点仅有上述至少两个负责任务调度的程序实例中的一个处于工作状态。
技术实现思路
本申请的目的在于提出一种改进的任务调度实例的主从切换方法和装置,来解决以上
技术介绍
部分提到的技术问题。第一方面,本申请提供了一种任务调度实例的主从切换方法,所述方法包括:预先设定的至少两个用于执行任务调度工作的实例根据各自的选举周期和开启时间判断是否达到选举时间,其中,各个实例的属性信息包括实例标识、选举周期、是否参加主实例选举和主从状态;如果到达选举时间,则属性信息为参加主实例选举的实例更新数据库中预先创建的主实例信息 ...
【技术保护点】
一种任务调度实例的主从切换方法,其特征在于,所述方法包括:预先设定的至少两个用于执行任务调度工作的实例根据各自的选举周期和开启时间判断是否达到选举时间,其中,各个实例的属性信息包括实例标识、选举周期、是否参加主实例选举和主从状态;如果到达选举时间,则属性信息为参加主实例选举的实例更新数据库中预先创建的主实例信息表中记录的信息;如果更新成功,则更新成功的实例的主从状态为主状态,除更新成功的实例之外的其他实例的主从状态为从状态;主从状态为主状态的实例执行任务调度工作。
【技术特征摘要】
1.一种任务调度实例的主从切换方法,其特征在于,所述方法包括:预先设定的至少两个用于执行任务调度工作的实例根据各自的选举周期和开启时间判断是否达到选举时间,其中,各个实例的属性信息包括实例标识、选举周期、是否参加主实例选举和主从状态;如果到达选举时间,则属性信息为参加主实例选举的实例更新数据库中预先创建的主实例信息表中记录的信息;如果更新成功,则更新成功的实例的主从状态为主状态,除更新成功的实例之外的其他实例的主从状态为从状态;主从状态为主状态的实例执行任务调度工作。2.根据权利要求1所述的方法,其特征在于,实例的属性信息还包括用于标识实例所执行工作的类别的类别名;以及所述如果到达选举时间,则属性信息为参加主实例选举的实例更新数据库中预先创建的主实例信息表中记录的信息,包括:如果到达选举时间,则参加主实例选举的实例判断所述主实例信息表中是否包含与该实例属性信息中类别名相同的记录;如果所述主实例信息表中不包含与该实例属性信息中类别名相同的记录,则该实例在所述主实例信息表中插入一条包括类别名、实例标识和锁定时间的任务记录,并锁定所述任务记录,其中,所述任务记录的类别名和实例标识与插入所述任务记录的实例的类别名和实例标识相同,锁定时间为所述任务记录的插入时间。3.根据权利要求2所述的方法,其特征在于,所述如果到达选举时间,则属性信息为参加主实例选举的实例更新数据库中预先创建的主实例信息表中记录的信息,还包括:如果所述主实例信息表中包含与参加主实例选举的实例的属性信息中类别名相同的记录,则参加主实例选举的实例判断是否满足预先
\t设定的更新条件;如果满足更新条件则更新所述主实例信息表中记录的信息。4.根据权利要求3所述的方法,其特征在于,实例的属性信息还包括主实例心跳超时时间,其中,主实例心跳超时时间为主从状态为主状态的实例工作异常的判断条件;以及所述更新条件为以下任意一种:所述主实例信息表中与参加主实例选举的实例的类别名相同的记录的实例标识和锁定时间为空;所述主实例信息表中与参加主实例选举的实例的类别名相同的记录的实例标识与参加主实例选举的实例的实例标识相同;所述主实例信息表中与参加主实例选举的实例的类别名相同的记录的实例标识与参加主实例选举的实例的实例标识不同且记录中的锁定时间与当前时间的差值大于主实例心跳超时时间。5.根据权利要求4所述的方法,其特征在于,所述如果满足更新条件则更新所述主实例信息表中记录的信息,包括:如果所述更新条件为所述主实例信息表中与参加主实例选举的实例的类别名相同的记录的实例标识和锁定时间为空,则更新参加主实例选举的实例的实例标识为所述主实例信息表中记录的实例标识,更新当前时间为锁定时间;如果所述更新条件为所述主实例信息表中与参加主实例选举的实例的类别名相同的记录中的实例标识与参加主实例选举的实例的实例标识相同,则更新当前时间为锁定时间;如果所述更新条件为所述主实例信息表中与参加主实例选举的实例的类别名相同的记录中的实例标识与参加主实例选举的实例的实例标识不同且记录中的锁定时间与当前时间的差值大于主实例心跳超时时间,则更新参加主实例选举的实例的实例标识为所述主实例信息表中记录的实例标识,更新当前时间为锁定时间。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:实例的属性信息中的是否参加主实例选举默认为参加主实例选举,当主从状态为主状态的实例在执行任务调度工作的过程中出现异常时,将该实例的属性信息更改为不参加主实例选举,当该实例的异...
【专利技术属性】
技术研发人员:杨家梁,
申请(专利权)人:北京京东尚科信息技术有限公司,北京京东世纪贸易有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。