System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,特别涉及一种解决数据不一致的方法。
技术介绍
1、在信用卡的整个交易中,大多数情况都会调用不同的系统来满足业务需求。可是在调用过程中会存在系统a执行成功,调用系统b执行任务,然后因为种种原因系统b执行失败了,结果就是导致数据的不一致了。
2、在目前的核心系统中,就经常会遇到这种问题。例如卡片激活的一个案例,在mps(介质系统)执行成功,调用cps(信用系统)因为触发乐观锁的原因,导致cps(信用系统)执行失败。此时cps(信用系统)就会执行代码的回滚操作,而mps(介质系统)执行成功了,因为没有分布式事务的关系,导致mps(介质系统)无法知道cps(信用系统)发生回滚了,进而导致两边系统的数据不一致了。
3、此时核心系统需要通过人工介入,查找原因并且针对这个脏数据,进行刷数据处理,大大增加了开发的工作量。因为这种情况不能及时发现,在客户使用信用卡的时候会发现问题,进而增加了客户的进线量,导致增加客户的投诉。
4、因此,有必要提供一种解决数据不一致的方法,使不同系统的数据自动统一,减少工作量。
技术实现思路
1、本专利技术的目的在于提供一种解决数据不一致的方法,使不同系统的数据自动统一,减少工作量。
2、为了解决现有技术中存在的问题,本专利技术提供了一种解决数据不一致的方法,包括以下步骤:
3、s1:发起业务需求,调用第一系统,第一系统插入业务信息,进行业务处理,若处理成功,所述第一系统注册zooke
4、s2:调用第二系统,第二系统插入业务信息,进行业务处理,若处理成功,则发送信息到mq消息队列,并更改消息队列节点信息,第一系统根据更改的节点信息更新mq消息队列的表的状态;若处理失败,第一系统轮询失败数据,重新发送信息到mq消息队列;
5、s3:调用第三系统,第三系统插入业务信息,进行业务处理,若处理成功,则发送信息到mq消息队列,并更改消息队列节点信息,第一系统根据更改的节点信息更新mq消息队列的表的状态;若处理失败,第一系统轮询失败数据,重新发送信息到mq消息队列,并重新调用第二系统;
6、s4:依次调用多个系统,直至业务需求完成。
7、可选的,在所述解决数据不一致的方法中,
8、业务信息包括业务表和消息表。
9、可选的,在所述解决数据不一致的方法中,发送信息到mq消息队列的方式如下:
10、注册指定key到对应的消息队列节点。
11、可选的,在所述解决数据不一致的方法中,zookeeper为分布式应用程序协调服务。
12、可选的,在所述解决数据不一致的方法中,业务需求包括交易和卡片激活。
13、可选的,在所述解决数据不一致的方法中,所述第一系统按照预设频率查询mq消息队列的表的信息。
14、本专利技术相对于现有技术,具有以下优点:
15、(1)降低人工介入,减少开发工作量。
16、(2)实现自动化数据同步,减少客诉,提高客户体验感。
本文档来自技高网...【技术保护点】
1.一种解决数据不一致的方法,其特征在于,包括以下步骤:
2.如权利要求1所述的解决数据不一致的方法,其特征在于,
3.如权利要求1所述的解决数据不一致的方法,其特征在于,发送信息到MQ消息队列的方式如下:
4.如权利要求1所述的解决数据不一致的方法,其特征在于,ZooKeeper为分布式应用程序协调服务。
5.如权利要求1所述的解决数据不一致的方法,其特征在于,业务需求包括交易和卡片激活。
6.如权利要求1所述的解决数据不一致的方法,其特征在于,所述第一系统按照预设频率查询MQ消息队列的表的信息。
【技术特征摘要】
1.一种解决数据不一致的方法,其特征在于,包括以下步骤:
2.如权利要求1所述的解决数据不一致的方法,其特征在于,
3.如权利要求1所述的解决数据不一致的方法,其特征在于,发送信息到mq消息队列的方式如下:
4.如权利要求1所述的解决数据不一致的...
【专利技术属性】
技术研发人员:史文祥,
申请(专利权)人:上海通联金融服务有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。