一种数据一致性保持方法、装置、设备和存储介质制造方法及图纸

技术编号:36164150 阅读:26 留言:0更新日期:2022-12-31 20:13
本发明专利技术公开了一种数据一致性保持方法、装置、设备和存储介质。该方法包括根据用户客户端发送的交易请求确定调用流程,根据调用流程中的指定顺序调用各目标业务服务模块的正向接口,以使目标业务服务模块执行预先配置的指定交易操作;根据各目标业务服务模块反馈的执行结果确定调度失败时,对当前调度失败的交易进行冲正或重试,以将各目标业务服务模块的交易数据保持一致。本实施例通过交易请求确定调用流程,调用流程调用业务服务模块通过正向接口执行预先配置的指定交易操作,若调度失败,则可以进行冲正或重试,不仅保证了交易入口的统一性,减少了业务系统对于调用流程处理的代码开发成本,也保持了各个业务服务模块的交易数据的一致性。数据的一致性。数据的一致性。

【技术实现步骤摘要】
一种数据一致性保持方法、装置、设备和存储介质


[0001]本专利技术涉及云计算
,尤其涉及一种数据一致性保持方法、装置、设备和存储介质。

技术介绍

[0002]在云环境中,一些复杂交易的链路往往会涉及到多个微服务模块的使用。例如,云管理平台中的数据库资源创建流程,这一个大操作会涉及到资产服务、计量服务、计费服务、计算服务、中间件服务等多个服务模块的多次小操作,且涉及到同步、异步多次调用,如何保证多个微服务之间数据一致性成为了一大挑战。
[0003]目前常见的解决分布式系统数据一致性的方案,基本都引入分布式事务去解决该问题,例如,包括请求阶段和提交阶段的两阶段提交方案,包括Try(尝试)、Confirm(执行)、Cancel(取消)三个阶段的TCC方案,通过消息表的消息状态去确认分布式事务的本地消息表方案,可靠性消息最终一致性方案以及最大努力通知方案等。
[0004]但是目前的解决方案各有其问题,两阶段提交方案由于包含两个阶段,当进行交互的参与者系统在任一阶段出现单点故障时,都会造成其余部分参与者系统无法收到数据,从而造成数本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据一致性保持方法,其特征在于,应用于调度服务系统,包括:根据用户客户端发送的交易请求确定调用流程,其中,所述调用流程中包括目标业务服务模块,以及调用所述目标业务服务模块的指定顺序;根据所述调用流程中的指定顺序调用各所述目标业务服务模块的正向接口,以使所述目标业务服务模块执行预先配置的指定交易操作;根据各所述目标业务服务模块反馈的执行结果确定调度失败时,对当前调度失败的交易进行冲正或重试,以将各所述目标业务服务模块的交易数据保持一致。2.根据权利要求1所述的方法,其特征在于,所述根据用户客户端发送的交易请求确定调用流程之前,还包括:接收交易流程配置指令;根据所述交易流程配置指令生成交易任务信息表以及交易任务步骤表,其中,所述交易任务信息表中包括交易类型编号与服务类型、操作类型、子服务类型、虚拟化类型和版本类型的对应关系,所述交易任务步骤表中包括交易类型编号和交易步骤顺序的对应关系。3.根据权利要求2所述的方法,其特征在于,所述根据用户客户端发送的交易请求确定调用流程,包括:根据用户客户端发送的交易请求参照所述交易任务信息表确定交易类型编号;根据所述交易类型编号参照所述交易任务步骤表确定交易步骤顺序;获取所述交易步骤顺序中各交易步骤多对应的目标业务服务模块,并根据所述交易步骤顺序和所述目标业务服务模块确定所述调用流程。4.根据权利要求1所述的方法,其特征在于,所述根据所述调用流程中的指定顺序调用各所述目标业务服务模块的正向接口之前,还包括:将所述调用流程作为目标任务提交到线程池;确定所述线程池中的核心线程数小于第一预设阈值。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:当确定所述线程池中的核心线程数大于所述第一预设阈值时,判断所述线程池中的任务队列是否已满,若是,将任务添加到所述任务队列中,否则,判断所述线程池中的全部线程是否小于第二预设阈值,若是,则创建与所述目标任务对应的核心线程,否则,确定所述线程池饱,并将所述目标任务设置为等待补偿状态。6.根据权利要求...

【专利技术属性】
技术研发人员:向容佳
申请(专利权)人:上海浦东发展银行股份有限公司
类型:发明
国别省市:

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

1