一种基于事件机制的数据一致性控制方法及装置制造方法及图纸

技术编号:10815148 阅读:105 留言:0更新日期:2014-12-24 19:25
本发明专利技术实施例公开了一种基于事件机制的数据一致性控制方法及装置,一种基于事件机制的数据一致性控制方法,包括以下步骤:依据预先注册的事件的注册信息,确定待监听的前置事务和该前置事务的切入点;监听所确定的前置事务是否启动;在监听到所确定的前置事务启动后,监听当前启动的前置事务是否达到相应的切入点;在达到当前启动的前置事务的切入点时,确定与该当前启动的前置事务的切入点对应的事件的标识和执行该事件所需的参数信息;根据确定的事件的标识和执行该事件所需的参数信息,执行该事件,以触发该事件对应的后序事务的启动。应用本发明专利技术实施例所提供的技术方案,保证了不能纳入同一个事务但需有序进行处理的数据操作的数据的一致性。

【技术实现步骤摘要】
【专利摘要】本专利技术实施例公开了一种基于事件机制的数据一致性控制方法及装置,一种基于事件机制的数据一致性控制方法,包括以下步骤:依据预先注册的事件的注册信息,确定待监听的前置事务和该前置事务的切入点;监听所确定的前置事务是否启动;在监听到所确定的前置事务启动后,监听当前启动的前置事务是否达到相应的切入点;在达到当前启动的前置事务的切入点时,确定与该当前启动的前置事务的切入点对应的事件的标识和执行该事件所需的参数信息;根据确定的事件的标识和执行该事件所需的参数信息,执行该事件,以触发该事件对应的后序事务的启动。应用本专利技术实施例所提供的技术方案,保证了不能纳入同一个事务但需有序进行处理的数据操作的数据的一致性。【专利说明】 一种基于事件机制的数据一致性控制方法及装置
本专利技术涉及计算机
,特别涉及一种基于事件机制的数据一致性控制方法及装置。
技术介绍
在计算机系统中,为保证各应用环节所使用的数据的一致性,通用的方法是,将多个数据操作进行捆绑,纳入同一个事务并执行。一个事务就是一个不可分割的工作单位,事务中所包含的数据操作要么都做要么都不做,这样可以保证事务外的数据使用方不会获得该事务在数据处理变化过程中产生的错误数据。 但在实际应用中,有的场景并不适合将所有的数据操作都纳入同一个事务进行处理。比如,在某场景中,前置数据操作和后序数据操作需要有序进行,即后序数据操作需能够得到前置数据操作的处理结果,但不依赖于前置数据操作的成功。如果将后序数据操作和前置数据操作纳入同一个事务,由于事务的捆绑特性,会导致前置数据操作和后序数据操作要么都成功执行,要么都执行失败,与预期不符,所以不能将二者纳入同一个事务进行处理。另外,当前置数据操作和后序数据操作存在跨地域、跨系统等分布式场景时,大部分情况下也不能将二者纳入同一个事务进行处理。 目前对于跨事务的数据操作,尤其是对于不能纳入同一个事务但需有序进行处理的数据操作,在保证数据一致性方面还没有比较有效的方法。
技术实现思路
为解决上述问题,本专利技术实施例公开了一种基于事件机制的数据一致性控制方法及装置。技术方案如下: 一种基于事件机制的数据一致性控制方法,包括: 依据预先注册的事件的注册信息,确定待监听的前置事务和该前置事务的切入点,每个事件对应一个待启动的后序事务,每个事件的注册信息至少包含该事件的标识、该事件所属的前置事务的标识、执行该事件对应的前置事务的切入点和执行该事件所需的参数信息; 监听所确定的前置事务是否启动; 在监听到所确定的前置事务启动后,监听当前启动的前置事务是否达到相应的切入点; 在达到当前启动的前置事务的切入点时,确定与该当前启动的前置事务的切入点对应的事件的标识和执行该事件所需的参数信息; 根据确定的事件的标识和执行该事件所需的参数信息,执行该事件,以触发该事件对应的后序事务的启动。 在本专利技术的一种【具体实施方式】中,所述监听所确定的前置事务是否启动,包括: 监测所确定的前置事务是否启动; 或者, 监听是否接收到所确定的前置事务的启动的通知消息,如果监听到,则表明所确定的前置事务已启动。 在本专利技术的一种【具体实施方式】中,所述在监听到所确定的前置事务启动后,监听当前启动的前置事务是否达到相应的切入点,包括: 在监听到所确定的前置事务启动后,监测当前启动的前置事务是否达到相应的切入点; 或者, 在监听到所确定的前置事务启动后,监听是否接收到当前启动的前置事务达到相应的切入点的通知消息,如果监听到,则表明当前启动的前置事务已达到相应的切入点。 在本专利技术的一种【具体实施方式】中,所述根据确定的事件的标识和执行该事件所需的参数信息,执行该事件,以触发该事件对应的后序事务的启动,包括: 根据所确定的事件的标识,获得执行该事件所需的参数定义; 根据获得的执行该事件所需的参数定义,为该事件的注册信息中的执行该事件所需的参数赋值,以执行该事件,进而触发该事件对应的后序事务的启动。 在本专利技术的一种【具体实施方式】中,所述前置事务的切入点至少包括所述前置事务提交开始时或者所述前置事务提交完成时。 一种基于事件机制的数据一致性控制装置,包括: 第一确定单元,用于依据预先注册的事件的注册信息,确定待监听的前置事务和该前置事务的切入点,每个事件对应一个待启动的后序事务,每个事件的注册信息至少包含该事件的标识、该事件所属的前置事务的标识、执行该事件对应的前置事务的切入点和执行该事件所需的参数信息; 第一监听单元,用于监听所述第一确定单元所确定的前置事务是否启动; 第二监听单元,用于在所述第一监听单元监听到所确定的前置事务启动后,监听当前启动的前置事务是否达到相应的切入点; 第二确定单元,用于在达到当前启动的前置事务的切入点时,确定与该当前启动的前置事务的切入点对应的事件的标识和执行该事件所需的参数信息; 事件执行单元,用于根据所述第二确定单元确定的事件的标识和执行该事件所需的参数信息,执行该事件,以触发该事件对应的后序事务的启动。 在本专利技术的一种【具体实施方式】中,所述第一监听单元具体用于: 监测所确定的前置事务是否启动; 或者, 监听是否接收到所确定的前置事务的启动的通知消息,如果监听到,则表明所确定的前置事务已启动。 在本专利技术的一种【具体实施方式】中,所述第二监听单元具体用于: 在监听到所确定的前置事务启动后,监测当前启动的前置事务是否达到相应的切入点; 或者, 在监听到所确定的前置事务启动后,监听是否接收到当前启动的前置事务达到相应的切入点的通知消息,如果监听到,则表明当前启动的前置事务已达到相应的切入点。 在本专利技术的一种【具体实施方式】中,所述事件执行单元,包括: 参数定义获得子单元,用于根据所述第二确定单元所确定的事件的标识,获得执行该事件所需的参数定义; 参数信息赋值子单元,用于根据参数定义获得子单元获得的执行该事件所需的参数定义,为该事件的注册信息中的执行该事件所需的参数赋值,以执行该事件,进而触发该事件对应的后序事务的启动。 在本专利技术的一种【具体实施方式】中,所述前置事务的切入点至少包括所述前置事务提交开始时或者所述前置事务提交完成时。 本专利技术实施例所提供的技术方案,依据预先注册的事件的注册信息,确定待监听的前置事务和该前置事务的切入点,当监听到当前启动的前置事务达到相应的切入点时,执行在该切入点注册的事件,以触发该事件对应的后序事务的启动。应用本专利技术实施例所提供的技术方案,在进行事件注册时,根据实际需求,将事件注册在前置事务的不同切入点,在相应的切入点执行各事件以触发各事件对应的后序事务的启动,从而保证了不能纳入同一个事务但需有序进行处理的数据操作的数据的一致性。 【专利附图】【附图说明】 为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 图1为本专利技术实施例中基于事件机制的数据一致性控制方法的一种实施流程图; 图2为本文档来自技高网
...
一种基于事件机制的数据一致性控制方法及装置

【技术保护点】
一种基于事件机制的数据一致性控制方法,其特征在于,包括:依据预先注册的事件的注册信息,确定待监听的前置事务和该前置事务的切入点,每个事件对应一个待启动的后序事务,每个事件的注册信息至少包含该事件的标识、该事件所属的前置事务的标识、执行该事件对应的前置事务的切入点和执行该事件所需的参数信息;监听所确定的前置事务是否启动;在监听到所确定的前置事务启动后,监听当前启动的前置事务是否达到相应的切入点;在达到当前启动的前置事务的切入点时,确定与该当前启动的前置事务的切入点对应的事件的标识和执行该事件所需的参数信息;根据确定的事件的标识和执行该事件所需的参数信息,执行该事件,以触发该事件对应的后序事务的启动。

【技术特征摘要】

【专利技术属性】
技术研发人员:樊京鑫李顺龙
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1