CN117331954A - 一种解决数据不一致的方法 - Google Patents
一种解决数据不一致的方法 Download PDFInfo
- Publication number
- CN117331954A CN117331954A CN202311307338.7A CN202311307338A CN117331954A CN 117331954 A CN117331954 A CN 117331954A CN 202311307338 A CN202311307338 A CN 202311307338A CN 117331954 A CN117331954 A CN 117331954A
- Authority
- CN
- China
- Prior art keywords
- information
- message queue
- processing
- service
- calling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000012545 processing Methods 0.000 claims abstract description 31
- 230000000977 initiatory effect Effects 0.000 claims abstract description 4
- 230000004913 activation Effects 0.000 claims description 4
- 238000012544 monitoring process Methods 0.000 abstract description 2
- 238000011161 development Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Computing Systems (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Security & Cryptography (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种解决数据不一致的方法,包括以下步骤:S1:发起业务需求,调用第一***,第一******业务信息,进行业务处理,若处理成功,所述第一***注册ZooKeeper监听,并发送信息到MQ消息队列;S2:调用第二***,第二******业务信息,进行业务处理,若处理成功,则发送信息到MQ消息队列,并更改消息队列节点信息,第一***根据更改的节点信息更新MQ消息队列的表的状态;若处理失败,第一***轮询失败数据,重新发送信息到MQ消息队列;S3:调用第三***,第三***采用和第二***相同的监听方式;S4:依次调用多个***,直至业务需求完成。本发明可以使不同***的数据自动统一,减少了工作量。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种解决数据不一致的方法。
背景技术
在***的整个交易中,大多数情况都会调用不同的***来满足业务需求。可是在调用过程中会存在***A执行成功,调用***B执行任务,然后因为种种原因***B执行失败了,结果就是导致数据的不一致了。
在目前的核心***中,就经常会遇到这种问题。例如卡片激活的一个案例,在MPS(介质***)执行成功,调用CPS(信用***)因为触发乐观锁的原因,导致CPS(信用***)执行失败。此时CPS(信用***)就会执行代码的回滚操作,而MPS(介质***)执行成功了,因为没有分布式事务的关系,导致MPS(介质***)无法知道CPS(信用***)发生回滚了,进而导致两边***的数据不一致了。
此时核心***需要通过人工介入,查找原因并且针对这个脏数据,进行刷数据处理,大大增加了开发的工作量。因为这种情况不能及时发现,在客户使用***的时候会发现问题,进而增加了客户的进线量,导致增加客户的投诉。
因此,有必要提供一种解决数据不一致的方法,使不同***的数据自动统一,减少工作量。
发明内容
本发明的目的在于提供一种解决数据不一致的方法,使不同***的数据自动统一,减少工作量。
为了解决现有技术中存在的问题,本发明提供了一种解决数据不一致的方法,包括以下步骤:
S1:发起业务需求,调用第一***,第一******业务信息,进行业务处理,若处理成功,所述第一***注册ZooKeeper监听,并发送信息到MQ消息队列;
S2:调用第二***,第二******业务信息,进行业务处理,若处理成功,则发送信息到MQ消息队列,并更改消息队列节点信息,第一***根据更改的节点信息更新MQ消息队列的表的状态;若处理失败,第一***轮询失败数据,重新发送信息到MQ消息队列;
S3:调用第三***,第三******业务信息,进行业务处理,若处理成功,则发送信息到MQ消息队列,并更改消息队列节点信息,第一***根据更改的节点信息更新MQ消息队列的表的状态;若处理失败,第一***轮询失败数据,重新发送信息到MQ消息队列,并重新调用第二***;
S4:依次调用多个***,直至业务需求完成。
可选的,在所述解决数据不一致的方法中,
业务信息包括业务表和消息表。
可选的,在所述解决数据不一致的方法中,发送信息到MQ消息队列的方式如下:
注册指定key到对应的消息队列节点。
可选的,在所述解决数据不一致的方法中,ZooKeeper为分布式应用程序协调服务。
可选的,在所述解决数据不一致的方法中,业务需求包括交易和卡片激活。
可选的,在所述解决数据不一致的方法中,所述第一***按照预设频率查询MQ消息队列的表的信息。
本发明相对于现有技术,具有以下优点:
(1)降低人工介入,减少开发工作量。
(2)实现自动化数据同步,减少客诉,提高客户体验感。
附图说明
图1为本发明实施例提供的解决数据不一致的方法的流程图;
图2为本发明实施例提供的模块流程图。
具体实施方式
下面将结合示意图对本发明的具体实施方式进行更详细的描述。根据下列描述,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
在下文中,如果本文所述的方法包括一系列步骤,本文所呈现的这些步骤的顺序并非必须是可执行这些步骤的唯一顺序,且一些所述的步骤可被省略和/或一些本文未描述的其他步骤可被添加到该方法。
在***的整个交易中,大多数情况都会调用不同的***来满足业务需求。可是在调用过程中会存在***A执行成功,调用***B执行任务,然后因为种种原因***B执行失败了,结果就是导致数据的不一致了。
为了解决现有技术中存在的问题,本发明提供了一种解决数据不一致的方法,如图1和2所示,所述方法包括以下步骤:
S1:发起业务需求,调用第一***,第一******业务信息,所述业务信息包括业务表和消息表,并进行业务处理,若处理成功,所述第一***注册ZooKeeper(ZooKeeper为分布式应用程序协调服务)监听,并发送信息到MQ消息队列;
S2:调用第二***,第二******业务信息,进行业务处理,若处理成功,则发送信息到MQ消息队列,并更改消息队列节点信息(即key对应的node),第一***根据更改的节点信息更新MQ消息队列的表的状态;若处理失败,第一***轮询失败数据,重新发送信息到MQ消息队列;
S3:调用第三***,第三******业务信息,进行业务处理,若处理成功,则发送信息到MQ消息队列,并更改消息队列节点信息,第一***根据更改的节点信息更新MQ消息队列的表的状态;若处理失败,第一***轮询失败数据,重新发送信息到MQ消息队列,并重新调用第二***;
S4:依次调用多个***,直至业务需求完成。
可选的,在所述解决数据不一致的方法中,发送信息到MQ消息队列的方式如下:
注册指定key到对应的消息队列节点。
通常的,业务需求包括交易和卡片激活。
优选的,所述第一***按照预设频率查询MQ消息队列的表的信息,预设频率可以为1分钟,以便及时查看各***的情况。
综上,本发明相对于现有技术,具有以下优点:
(1)降低人工介入,减少开发工作量。
(2)实现自动化数据同步,减少客诉,提高客户体验感。
上述仅为本发明的优选实施例而已,并不对本发明起到任何限制作用。任何所属技术领域的技术人员,在不脱离本发明的技术方案的范围内,对本发明揭露的技术方案和技术内容做任何形式的等同替换或修改等变动,均属未脱离本发明的技术方案的内容,仍属于本发明的保护范围之内。
Claims (6)
1.一种解决数据不一致的方法,其特征在于,包括以下步骤:
S1:发起业务需求,调用第一***,第一******业务信息,进行业务处理,若处理成功,所述第一***注册ZooKeeper监听,并发送信息到MQ消息队列;
S2:调用第二***,第二******业务信息,进行业务处理,若处理成功,则发送信息到MQ消息队列,并更改消息队列节点信息,第一***根据更改的节点信息更新MQ消息队列的表的状态;若处理失败,第一***轮询失败数据,重新发送信息到MQ消息队列;
S3:调用第三***,第三******业务信息,进行业务处理,若处理成功,则发送信息到MQ消息队列,并更改消息队列节点信息,第一***根据更改的节点信息更新MQ消息队列的表的状态;若处理失败,第一***轮询失败数据,重新发送信息到MQ消息队列,并重新调用第二***;
S4:依次调用多个***,直至业务需求完成。
2.如权利要求1所述的解决数据不一致的方法,其特征在于,
业务信息包括业务表和消息表。
3.如权利要求1所述的解决数据不一致的方法,其特征在于,发送信息到MQ消息队列的方式如下:
注册指定key到对应的消息队列节点。
4.如权利要求1所述的解决数据不一致的方法,其特征在于,ZooKeeper为分布式应用程序协调服务。
5.如权利要求1所述的解决数据不一致的方法,其特征在于,业务需求包括交易和卡片激活。
6.如权利要求1所述的解决数据不一致的方法,其特征在于,所述第一***按照预设频率查询MQ消息队列的表的信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311307338.7A CN117331954A (zh) | 2023-10-10 | 2023-10-10 | 一种解决数据不一致的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311307338.7A CN117331954A (zh) | 2023-10-10 | 2023-10-10 | 一种解决数据不一致的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117331954A true CN117331954A (zh) | 2024-01-02 |
Family
ID=89291402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311307338.7A Pending CN117331954A (zh) | 2023-10-10 | 2023-10-10 | 一种解决数据不一致的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117331954A (zh) |
-
2023
- 2023-10-10 CN CN202311307338.7A patent/CN117331954A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107437222B (zh) | 基于银行柜面前端的联机业务数据的处理方法及*** | |
CN111369350B (zh) | 冲正交易处理方法及装置 | |
CN108076098A (zh) | 一种业务处理方法及*** | |
CN111274052A (zh) | 数据分发方法、服务器及计算机可读存储介质 | |
CN110888718A (zh) | 分布式事务的实现方法及装置 | |
CN114253673A (zh) | 一种分布式***的事务处理方法和事务处理装置 | |
US20030158883A1 (en) | Message processing | |
CN109002462A (zh) | 一种实现分布式事物的方法及*** | |
CN105653356A (zh) | 处理多服务器并发操作的方法及装置 | |
CN111680080A (zh) | 数据处理方法及数据处理*** | |
CN111127088B (zh) | 实现最终一致性的方法、装置、计算机设备及存储介质 | |
CN106170013A (zh) | 一种基于Redis的Kafka消息唯一性方法 | |
CN113742043B (zh) | 一种服务器后端任务异步拆分方法 | |
CN112632093A (zh) | 工单处理方法、设备、***、存储介质及程序产品 | |
CN117331954A (zh) | 一种解决数据不一致的方法 | |
CN111241112A (zh) | 一种保证幂等的微服务调用监管***及方法 | |
CN116302368A (zh) | 一种分布式事务处理方法、装置、设备及存储介质 | |
CN113986941A (zh) | 事务批量处理方法及装置 | |
CN115208834A (zh) | 一种基于数据库存储过程设计的服务流量限制方法 | |
CN115629920A (zh) | 数据请求的异常处理方法及其装置、计算机可读存储介质 | |
CN110515978B (zh) | 一种状态数据库交易验签实现方法 | |
CN114202307A (zh) | 理财登记报送***和设备 | |
CN108572959B (zh) | 一种与数据库交互数据的方法和装置 | |
CN111752911A (zh) | 一种基于Flume的数据传输方法、***、终端及存储介质 | |
CN114900531B (zh) | 数据同步方法、装置和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |