Distributed bypass reconciliation system, distributed bypass reconciliation method, equipment and medium

By designing a distributed bypass reconciliation system, using comparison, repair and backtracking process groups, the problem of data inconsistency in distributed systems and microservice architectures is solved, and data consistency is achieved.

CN119829672APending Publication Date: 2025-04-15CHINA TELECOM CLOUD TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411672817.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2025-04-15

AI Technical Summary

Technical Problem

The prior art lacks a general and adapted reconciliation method to solve the problem of data inconsistency in distributed systems and microservice architectures.

Method used

A distributed bypass reconciliation system is designed, which includes a comparison process group, a repair process group and a backtracking process group, which is used to compare, repair and roll back data in a distributed application system to ensure data consistency.

Benefits of technology

Through this system, the consistency of data between the distributed system and the microservice system can be effectively guaranteed, and the problem of data inconsistency is solved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119829672A_ABST
    Figure CN119829672A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a distributed bypass reconciliation system, a distributed bypass reconciliation method, distributed bypass reconciliation equipment and a medium, the distributed bypass reconciliation system is connected with a distributed application system, and the distributed application system comprises a source application subsystem and a target application subsystem; the distributed bypass reconciliation system comprises a comparison process group used for comparing first data obtained from a source application subsystem with second data obtained from a target application subsystem and generating a target comparison result; the restoration process group is used for performing data restoration on the source application subsystem and the target application subsystem when the target comparison result output by the comparison process group is inconsistent; and the backtracking process group is used for carrying out data rollback on the source application subsystem and the target application subsystem when the repair process group fails to repair. According to the embodiment of the invention, the consistency of data among subsystems in a distributed system and a micro-service system can be ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of distributed reconciliation, and in particular to a distributed bypass reconciliation system, a distributed bypass reconciliation method, an electronic device and a computer-readable storage medium. Background Art

[0002] To address the problem of data inconsistency in distributed systems and microservice architectures, there is currently no universal reconciliation method that can be adapted to any application system. Summary of the invention

[0003] In view of the above problems, a distributed bypass reconciliation system, a distributed bypass reconciliation method, an electronic device and a computer-readable storage medium are proposed to overcome the above problems or at least partially solve the above problems, including:

[0004] A distributed bypass reconciliation system, wherein the distributed bypass reconciliation system is connected to a distributed application system, wherein the distributed application system includes a source application subsystem and a destination application subsystem; the distributed bypass reconciliation system includes:

[0005] A comparison process group, used to compare the first data obtained from the source application subsystem with the second data obtained from the destination application subsystem, and generate a target comparison result;

[0006] A repair process group, used to repair data of the source application subsystem and the destination application subsystem when the target comparison result output by the comparison process group is inconsistent;

[0007] The backtracking process group is used to roll back the data of the source application subsystem and the target application subsystem when the repair process group fails to repair.

[0008] Optionally, the distributed bypass reconciliation system further includes:

[0009] Application Programming Interface system, used to trigger the running of reconciliation tasks;

[0010] The comparison process group, when triggering the execution of the reconciliation task, obtains the first data from the source application subsystem and the second data from the destination application subsystem, and compares the first data with the second data.

[0011] Optionally, the distributed bypass reconciliation system further includes: a storage system;

[0012] The application programming interface system is further used to register reconciliation tasks for the source application subsystem and the destination application subsystem, and store the reconciliation tasks registered for the source application subsystem and the destination application subsystem in the storage system;

[0013] The comparison process group is used to obtain the first data from the source application subsystem and the second data from the target application subsystem when the comparison status of the reconciliation task of the storage system is unprocessed, and compare the first data with the second data; when the target comparison result is inconsistent, mark the repair step of the reconciliation task as unprocessed;

[0014] The repair process group is used to repair the data in the source application subsystem and the target application subsystem when the repair step of the reconciliation task in the storage system is not processed; when the repair result is failure, mark the backtracking step of the reconciliation task as not processed;

[0015] The backtracking process group is used to roll back data of the source application subsystem and the destination application subsystem when the backtracking step of the reconciliation task in the storage system is not processed.

[0016] Optionally, the distributed bypass reconciliation system further includes:

[0017] The process group management system is used to adjust the number of processes in the comparison process group, the repair process group and / or the backtracking process group.

[0018] Optionally, the comparison process group, the repair process group and the backtracking process group are deployed on a single machine.

[0019] Optionally, the comparison process group, the repair process group and the backtracking process group are deployed in a distributed manner.

[0020] Optionally, the storage system includes the following storage modes:

[0021] Database storage mode, cache storage mode and memory storage mode;

[0022] The storage system provides a unified storage interface externally.

[0023] The embodiment of the present invention further provides a distributed bypass reconciliation method, which is applied to the distributed bypass reconciliation system as described above; the method comprises:

[0024] Acquire first data from a source application subsystem, and acquire second data from a destination application subsystem;

[0025] The first data and the second data are compared and a target comparison result is generated; the repair process group in the distributed bypass reconciliation system is used to repair data of the source application subsystem and the destination application subsystem when the target comparison result is inconsistent; the backtracking process group in the distributed bypass reconciliation system is used to roll back data of the source application subsystem and the destination application subsystem when the repair process group fails.

[0026] An embodiment of the present invention also provides an electronic device, including a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program implements the above-mentioned distributed bypass reconciliation method when executed by the processor.

[0027] An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the distributed bypass reconciliation method as described above is implemented.

[0028] The embodiments of the present invention have the following advantages:

[0029] In an embodiment of the present invention, a distributed bypass reconciliation system is connected to a distributed application system, and the distributed application system includes a source application subsystem and a destination application subsystem; the distributed bypass reconciliation system includes: a comparison process group, which is used to compare first data obtained from the source application subsystem and second data obtained from the destination application subsystem, and generate a target comparison result; a repair process group, which is used to repair data of the source application subsystem and the destination application subsystem when the target comparison result output by the comparison process group is inconsistent; and a backtracking process group, which is used to roll back data of the source application subsystem and the destination application subsystem when the repair process group fails.

[0030] Through the embodiments of the present invention, the consistency of data among subsystems in a distributed system and a microservice system can be guaranteed. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] In order to more clearly illustrate the technical solution of the present invention, the accompanying drawings required for use in the description of the present invention will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative labor.

[0032] Figure 1 It is a structural diagram of a distributed bypass reconciliation system according to an embodiment of the present invention;

[0033] Figure 2 It is a schematic diagram of the layout of a partial structure of a distributed bypass reconciliation system according to an embodiment of the present invention;

[0034] Figure 3 It is another schematic diagram of the layout of a partial structure of a distributed bypass reconciliation system according to an embodiment of the present invention;

[0035] Figure 4 is a structural diagram of another distributed bypass reconciliation system according to an embodiment of the present invention;

[0036] Figure 5 It is a flowchart of the steps of another distributed bypass reconciliation method according to an embodiment of the present invention. DETAILED DESCRIPTION

[0037] In order to make the above-mentioned purposes, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0038] Microservices were first proposed by Martin Fowler and James Lewis in 2014. The microservices architectural style is a way to develop a single application using a set of small services. Each service runs in its own process and communicates using a lightweight mechanism, usually HTTP API (Hypertext Transfer Protocol Application Programming Interface). These services are built based on business capabilities and can be independently deployed through automated deployment mechanisms. These services are implemented in different programming languages ​​and different data storage technologies, and maintain minimal centralized management. Microservices have the advantages of high scalability, flexibility in independent development and deployment technology stacks, fault tolerance and maintainability, and high composability, but also bring the following disadvantages:

[0039] 1. Complexity of distributed systems.

[0040] The microservice architecture splits a large application into multiple small services, which makes the entire system a distributed system. The complexity of distributed systems includes challenges in service discovery, load balancing, fault handling, data consistency, etc. Developing and maintaining distributed systems requires higher technical requirements and architectural design capabilities.

[0041] 2. Inter-system communication overhead.

[0042] In a microservice architecture, different services communicate with each other through the network. This means that data transmission between services needs to be transmitted over the network, increasing the communication overhead between systems. In addition, since the service splitting is more granular, more network calls may be required, increasing the latency and complexity of the system.

[0043] 3. Operation and maintenance complexity.

[0044] There are a large number of services and dependencies in the microservice architecture, which increases the complexity of system operation and maintenance. It is necessary to monitor and manage the operating status of each service, deploy and expand services, and deal with issues such as version compatibility between services. At the same time, due to the independent deployment of services, services need to be properly monitored and fault-handled to ensure the stability and availability of the entire system.

[0045] 4. Data consistency and transaction management.

[0046] In a microservices architecture, each service has its own data store. This makes data consistency and transaction management more complex. Transaction processing across multiple services requires additional design and implementation to ensure data consistency and integrity. The way distributed transactions are handled usually introduces additional overhead and complexity.

[0047] There is currently no universal reconciliation method that can be adapted to any application system to solve the problem of data inconsistency in distributed systems and microservice architectures.

[0048] To address this, an embodiment of the present invention provides a distributed bypass reconciliation system that is decoupled from the business and ensures data consistency between subsystems in each distributed application system.

[0049] For details, please refer to Figure 1 , Figure 1 The schematic diagram of the structure of a distributed bypass reconciliation system 10 according to an embodiment of the present invention is shown. The distributed bypass reconciliation system 10 can be connected to a distributed application system 20; the distributed application system 20 can include an active application subsystem 210 and a destination application subsystem 220.

[0050] The source application subsystem 210 and the target application subsystem 220 may store data for the same service. To ensure the normal operation of the service, it is necessary to ensure that the data for the service in the source application subsystem 210 and the target application subsystem 220 are consistent.

[0051] Exemplarily, the data in the source application subsystem 210 can be referred to as first data, and the data in the destination application subsystem 220 can be referred to as second data; the first data and the second data can be business data, user data, etc. for the same business of the source application subsystem 210 and the destination application subsystem 220, and the embodiments of the present invention are not limited to this.

[0052] like Figure 1 As shown, the distributed bypass reconciliation system 10 may include:

[0053] The comparison process group 110 is used to compare the first data obtained from the source application subsystem 210 with the second data obtained from the target application subsystem 220, and generate a target comparison result;

[0054] The repair process group 120 is used to repair data of the source application subsystem 210 and the target application subsystem 220 when the target comparison result output by the comparison process group 110 is inconsistent;

[0055] The backtracking process group 130 is used to roll back data of the source application subsystem 210 and the target application subsystem 220 when the repair process group 120 fails to repair.

[0056] In an embodiment of the present invention, the distributed bypass reconciliation system 10 may be composed of a comparison process group 110, a repair process group 120, and a backtracking process group 130; wherein:

[0057] The comparison process group 110 can be used to compare and give the differences in data between different subsystems; the repair process group 120 can be used to repair inconsistent data between subsystems; and the backtracking process group 130 can be used to perform a rollback operation when repairing errors.

[0058] Specifically, when reconciliation is required, the comparison process group 110 can be used to obtain first data from the source application subsystem 210 and obtain second data from the destination application subsystem 220 .

[0059] After obtaining the first data and the second data, the comparison process group 110 may compare the difference between the two and generate a target comparison result based on the comparison result. The target comparison result may be used to indicate whether the first data and the second data are different.

[0060] Specifically, the target comparison result can be used to indicate whether there is a difference in data between the source application subsystem 210 and the target application subsystem 220 .

[0061] After the comparison process group 110 completes the comparison, the repair process group 120 may perform subsequent steps based on the target comparison result.

[0062] Specifically, after the comparison process group 110 completes the comparison and generates a target comparison result, if the target comparison result indicates that the first data is inconsistent with the second data, the process repair group can be responsible for repairing the data inconsistency problem between the source application subsystem 210 and the target application subsystem 220.

[0063] Specifically, the process repair group may perform data repair on the source application subsystem 210 and the target application subsystem 220 to make the data in the source application subsystem 210 and the data in the target application subsystem 220 consistent.

[0064] After the repair process group 120 repairs the data of the source application subsystem 210 and the target application subsystem 220, if the repair fails, the backtracking process group 130 can roll back the data of the source application subsystem 210 and the target application subsystem 220 to make the data in the source application subsystem 210 and the target application subsystem 220 consistent.

[0065] In an embodiment of the present invention, a distributed bypass reconciliation system 10 is connected to a distributed application system 20, and the distributed application system 20 includes a source application subsystem 210 and a target application subsystem 220; the distributed bypass reconciliation system 10 includes: a comparison process group 110, which is used to compare the first data obtained from the source application subsystem 210 and the second data obtained from the target application subsystem 220, and generate a target comparison result; a repair process group 120, which is used to repair the source application subsystem 210 and the target application subsystem 220 when the target comparison result output by the comparison process group 110 is inconsistent; and a backtracking process group 130, which is used to roll back the data of the source application subsystem 210 and the target application subsystem 220 when the repair process group 120 fails.

[0066] Through the embodiments of the present invention, the consistency of data among subsystems in a distributed system and a microservice system can be guaranteed.

[0067] In one embodiment of the present invention, the distributed bypass reconciliation system 10 further includes:

[0068] An application programming interface system 140, used to trigger the execution of a reconciliation task;

[0069] The comparison process group 110 , when triggering the execution of the account reconciliation task, obtains first data from the source application subsystem 210 , obtains second data from the target application subsystem 220 , and compares the first data with the second data.

[0070] In some feasible embodiments, the distributed bypass reconciliation system 10 may further include an application programming interface system 140, and the application programming interface system 140 may be used to trigger the execution of a reconciliation task.

[0071] Exemplarily, the application programming interface system 140 can actively trigger the running of the reconciliation task, or can passively trigger the running of the reconciliation task; for example: the application programming interface system 140 can be manually triggered by an engineer, or a reconciliation time can be set; whenever the reconciliation time arrives, the application programming interface system 140 automatically triggers the distributed bypass reconciliation system 10 to run the reconciliation task.

[0072] In some feasible embodiments, when triggering the reconciliation task to run, the comparison process group 110 may obtain first data from the source application subsystem 210 and second data from the destination application subsystem 220, and compare the first data with the second data.

[0073] In one embodiment of the present invention, the distributed bypass reconciliation system 10 further includes: a storage system 150;

[0074] The application programming interface system 140 is further used to register the reconciliation task for the source application subsystem 210 and the target application subsystem 220, and store the reconciliation task registered for the source application subsystem 210 and the target application subsystem 220 in the storage system 150;

[0075] The comparison process group 110 is used to obtain the first data from the source application subsystem 210 and the second data from the target application subsystem 220 when the comparison status of the reconciliation task of the storage system 150 is unprocessed, and compare the first data with the second data; when the target comparison result is inconsistent, mark the repair step of the reconciliation task as unprocessed;

[0076] The repair process group 120 is used to repair the data in the source application subsystem 210 and the target application subsystem 220 when the repair step of the reconciliation task in the storage system 150 is not processed; when the repair result is failure, mark the backtracking step of the reconciliation task as unprocessed;

[0077] The backtracking process group 130 is used to roll back data of the source application subsystem 210 and the target application subsystem 220 when the backtracking step of the reconciliation task in the storage system 150 is not processed.

[0078] In some feasible embodiments, the distributed bypass reconciliation system 10 may further include a storage system 150; the storage system 150 may be used to store registration information of each subsystem in the distributed application system 20, and to store records of reconciliation tasks, so that the comparison process group 110, the repair process group 120 and the backtracking process group 130 can determine which step the current reconciliation task has reached.

[0079] Exemplarily, in addition to managing the triggering of the reconciliation task, the application programming interface system 140 may also manage the registration of the subsystem.

[0080] Specifically, the application programming interface system 140 may also generate a reconciliation task for the source application subsystem 210 and the destination application subsystem 220 when it is necessary to reconcile the source application subsystem 210 and the destination application subsystem 220, and record the reconciliation task in the storage system 150. At this time, the comparison status of the reconciliation task is unprocessed.

[0081] After recording the reconciliation task in the storage system 150, the comparison process group 110 can obtain the first data from the source application subsystem 210 and the second data from the destination application subsystem 220 through the information recorded in the storage system 150 by the subsystem when detecting that the comparison status of the reconciliation task is unprocessed, and compare the first data with the second data.

[0082] After comparing the first data and the second data, the comparison process group 110 may generate a target comparison result; and when the target comparison result is that the first data and the second data are inconsistent, the repair step of the reconciliation task in the storage system 150 is set to unprocessed.

[0083] When the repair process group 120 detects that the repair step of the reconciliation task in the storage system 150 is not processed, it can repair the data in the source application subsystem 210 and the target application subsystem 220 .

[0084] When the repair is successful, the reconciliation task is completed; otherwise, when the repair result is a failure, the repair process group 120 can mark the backtracking step of the reconciliation task in the storage system 150 as unprocessed.

[0085] When the backtracking process group 130 detects that the backtracking step of the reconciliation task in the storage system 150 is not processed, the backtracking process group 130 can roll back the data of the source application subsystem 210 and the target application subsystem 220 .

[0086] When the rollback is successful, the reconciliation task is completed; otherwise, when the rollback fails, the failure information is saved to the storage system 150 for engineers to process.

[0087] In one embodiment of the present invention, the storage system 150 includes the following storage modes:

[0088] Database storage mode, cache storage mode and memory storage mode;

[0089] The storage system 150 provides a unified storage interface to the outside.

[0090] In some feasible embodiments, the storage system 150 may include the following storage modes:

[0091] Database storage mode, cache storage mode and memory storage mode. The storage system 150 provides a unified storage interface to the outside world; thus, the storage system 150 can shield storage differences and meet the reconciliation performance requirements of different scenarios.

[0092] The database storage mode refers to storing data persistently on a hard disk or other persistent storage media. The characteristics of the database storage mode include:

[0093] Persistence: Data is stored on the hard disk and will not be lost even if the system is restarted or the power is lost.

[0094] Structured: Data is usually stored in a tabular form with clear structures and relationships.

[0095] Transactionality: Supports ACID (Atomicity, Consistency, Isolation, Durability) features and is suitable for applications that require high reliability and consistency.

[0096] Query optimization: supports complex queries and index optimization, suitable for large-scale data processing.

[0097] The database storage mode is suitable for enterprise-level applications, such as ERP (Enterprise Resource Planning) and CRM (Customer Relationship Management) systems; it is also suitable for data that requires long-term storage and complex queries; it is also suitable for scenarios that require high reliability and consistency.

[0098] The cache storage mode refers to temporarily storing data in a high-speed storage medium (such as memory) to increase the access speed of the data. The characteristics of the cache storage mode are:

[0099] Temporary: Data is stored in memory, usually temporarily, and will be lost after a system restart or power outage.

[0100] High-speed access: Memory access speed is much faster than hard disk, which is suitable for scenarios that require fast reading and writing.

[0101] Limited capacity: Memory capacity is usually smaller than a hard disk and is not suitable for storing large amounts of data.

[0102] Non-persistent: Data is usually not persistent and is suitable for temporary storage and fast access.

[0103] The cache storage mode is suitable for frequently accessed data, such as session data and cached data; it is also suitable for applications that require fast response, such as Web applications and real-time analysis; it is also suitable for temporary storage, such as caching database query results.

[0104] Memory storage mode means storing data completely in memory and is usually used for applications that require extremely high performance. The characteristics of memory storage mode are:

[0105] Fully memorized: All data is stored in memory and can be accessed very quickly.

[0106] Non-persistent: Data is usually not persistent and will be lost after the system is restarted or power is off.

[0107] High concurrency: Suitable for high concurrency and low latency applications.

[0108] Capacity limitation: The memory capacity is limited and is not suitable for storing large amounts of data.

[0109] The memory storage mode is suitable for applications that require extremely high performance, such as real-time trading systems and high-frequency trading; it is also suitable for scenarios that require low latency and high concurrency; it is also suitable for temporary storage, such as caching and session management.

[0110] In one embodiment of the present invention, the distributed bypass reconciliation system 10 further includes:

[0111] The process group management system 160 is used to compare and adjust the number of processes in the process group 110 , the repair process group 120 and / or the backtracking process group 130 .

[0112] In some feasible embodiments, the distributed bypass reconciliation system 10 may further include a process group management system 160 ; the process group management system 160 may adjust the number of processes currently actually running in the comparison process group 110 , the repair process group 120 , and / or the backtracking process group 130 .

[0113] For example, when the number of reconciliation tasks is too large, resulting in insufficient performance of the distributed bypass reconciliation system 10, the process group management system 160 can dynamically adjust the number of processes currently actually running in each process group, which is not limited in this embodiment of the present invention.

[0114] In one embodiment of the present invention, the comparison process group 110 , the repair process group 120 , and the backtracking process group 130 are deployed on a single machine.

[0115] In some feasible embodiments, the comparison process group 110, the repair process group 120 and the backtracking process group 130 are deployed on a single machine, such as Figure 2 As shown, the comparison process group 110 , the repair process group 120 , and the backtracking process group 130 may be deployed in one server 30 .

[0116] In another embodiment of the present invention, the comparison process group 110 , the repair process group 120 , and the backtracking process group 130 are deployed in a distributed manner.

[0117] In some feasible embodiments, the comparison process group 110, the repair process group 120 and the backtracking process group 130 may also be deployed in a distributed manner, such as Figure 3 As shown, the comparison process group 110 , the repair process group 120 and the backtracking process group 130 may be deployed in different servers 30 , respectively.

[0118] like Figure 4 As shown, the distributed bypass reconciliation system 10 is connected to the distributed application system 20, and the distributed application system 20 includes a source application subsystem 210 and a destination application subsystem 220; the distributed bypass reconciliation system 10 includes a comparison process group 110, a repair process group 120, a backtracking process group 130, a process group management system 160, a storage system 150 and an application programming interface system 140.

[0119] The storage system 150 supports three storage modes: database storage mode, cache storage mode and memory storage mode; it provides a unified storage interface to the outside world, shields storage differences, and meets the reconciliation performance requirements of different scenarios. Among them, the database storage mode is implemented based on the database 151, the cache storage mode is implemented based on Redis (Remote Dictionary Server) 152, and the memory storage mode is implemented based on the memory 153.

[0120] The source application subsystem 210 registers with the distributed bypass reconciliation system 10 through the application programming interface system 140;

[0121] The destination application subsystem 220 registers with the distributed bypass reconciliation system 10 through the application programming interface system 140;

[0122] A reconciliation task is defined through the application programming interface system 140. The reconciliation task can be actively triggered by the application programming interface system 140, or the task can be configured to run regularly. The initial status of the reconciliation task is set to unprocessed, and the step is COMPARE.

[0123] The comparison process group 110 scans the reconciliation task TASK table, searches for reconciliation tasks whose task status is unprocessed and whose step is COMPARE, obtains a batch of reconciliation tasks and starts the reconciliation tasks.

[0124] When the data of the source application subsystem 210 and the target application subsystem 220 are completely consistent, the update task is completed;

[0125] When the data of the source application subsystem 210 and the target application subsystem 220 are inconsistent, COMPARE saves the inconsistent information to the storage system 150, changes the next step to FIX, and the status to unprocessed;

[0126] The repair process group 120 scans the reconciliation task TASK table, searches for reconciliation tasks whose task status is unprocessed and whose step is FIX, obtains a batch of reconciliation tasks and starts the repair task;

[0127] When the repair is successful, the update task is completed; when the FIX repair fails, the failure information is saved to the storage system 150, the next step is changed to ROLLBACK, and the status is unprocessed;

[0128] The backtracking process group 130 scans the reconciliation task TASK table, searches for reconciliation tasks whose task status is unprocessed and whose step is ROLLBACK, obtains a batch of reconciliation tasks and starts the rollback task;

[0129] When the rollback is successful, the reconciliation task is completed; when the rollback fails, the failure information is saved to the storage system 150.

[0130] When there are too many reconciliation tasks and the performance of the distributed bypass reconciliation system 10 is insufficient, the number of processes in each process group can be dynamically adjusted, or additional servers can be added for distributed deployment.

[0131] Based on the above-mentioned distributed bypass reconciliation system, an embodiment of the present invention further provides a distributed bypass reconciliation method; the method can be applied to the comparison process group of the distributed bypass reconciliation system. Figure 5 , showing a step flow chart of a distributed bypass reconciliation method according to an embodiment of the present invention.

[0132] like Figure 5 As shown, the distributed bypass reconciliation method may include the following steps:

[0133] Step 501: Acquire first data from a source application subsystem, and acquire second data from a destination application subsystem.

[0134] When reconciliation is required, the comparison process group can be used to obtain first data from the source application subsystem and second data from the destination application subsystem.

[0135] Step 502: compare the first data and the second data, and generate a target comparison result; the repair process group in the distributed bypass reconciliation system is used to repair the data of the source application subsystem and the target application subsystem when the target comparison result is inconsistent; the backtracking process group in the distributed bypass reconciliation system is used to roll back the data of the source application subsystem and the target application subsystem when the repair process group fails.

[0136] After obtaining the first data and the second data, the comparison process group can compare the difference between the two and generate a target comparison result based on the comparison result. The target comparison result can be used to indicate whether the first data and the second data are different.

[0137] Specifically, the target comparison result can be used to characterize whether there is a difference in data between the source application subsystem and the target application subsystem.

[0138] After the comparison process group completes the comparison, the repair process group can proceed to the subsequent steps based on the target comparison result.

[0139] Specifically, after the comparison process group completes the comparison and generates a target comparison result, if the target comparison result indicates that the first data is inconsistent with the second data, the process repair group can be responsible for repairing the data inconsistency problem between the source application subsystem and the target application subsystem.

[0140] Specifically, the process repair group may perform data repair on the source application subsystem and the destination application subsystem to make the data in the source application subsystem consistent with the data in the destination application subsystem.

[0141] After the repair process group repairs the data of the source application subsystem and the target application subsystem, if the repair fails, the backtracking process group can roll back the data of the source application subsystem and the target application subsystem to make the data in the source application subsystem and the target application subsystem consistent.

[0142] In an embodiment of the present invention, first data is obtained from a source application subsystem, and second data is obtained from a destination application subsystem; the first data and the second data are compared, and a target comparison result is generated; the repair process group in the distributed bypass reconciliation system is used to repair data of the source application subsystem and the destination application subsystem when the target comparison result is inconsistent; the backtracking process group in the distributed bypass reconciliation system is used to roll back data of the source application subsystem and the destination application subsystem when the repair process group fails.

[0143] Through the embodiments of the present invention, the consistency of data among subsystems in a distributed system and a microservice system can be guaranteed.

[0144] It should be noted that, for the sake of simplicity, the method embodiments are described as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.

[0145] An embodiment of the present invention also provides an electronic device, including a processor, a memory, and a computer program stored in the memory and capable of running on the processor, and when the computer program is executed by the processor, the above-mentioned distributed bypass reconciliation method is implemented.

[0146] An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the above-mentioned distributed bypass reconciliation method is implemented.

[0147] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0148] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.

[0149] Those skilled in the art will appreciate that the embodiments of the present invention may be provided as methods, devices, or computer program products. Therefore, the embodiments of the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.

[0150] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0151] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0152] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0153] Although the preferred embodiments of the present invention have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present invention.

[0154] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.

[0155] The above provides a detailed introduction to a distributed bypass reconciliation system, a distributed bypass reconciliation method, an electronic device and a computer-readable storage medium. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea; at the same time, for those skilled in the art, according to the idea of ​​the present invention, there will be changes in the specific implementation methods and application scopes. In summary, the content of this specification should not be understood as limiting the present invention.

Claims

1. A distributed bypass reconciliation system, characterized in that: The distributed bypass reconciliation system is connected to a distributed application system, and the distributed application system includes a source application subsystem and a destination application subsystem; The distributed bypass reconciliation system includes: A comparison process group, used to compare the first data obtained from the source application subsystem with the second data obtained from the destination application subsystem, and generate a target comparison result; A repair process group, used to repair data of the source application subsystem and the destination application subsystem when the target comparison result output by the comparison process group is inconsistent; The backtracking process group is used to roll back the data of the source application subsystem and the target application subsystem when the repair process group fails to repair.

2. The distributed bypass reconciliation system according to claim 1, characterized in that: The distributed bypass reconciliation system also includes: Application Programming Interface system, used to trigger the running of reconciliation tasks; The comparison process group, when triggering the execution of the reconciliation task, obtains the first data from the source application subsystem and the second data from the destination application subsystem, and compares the first data with the second data.

3. The distributed bypass reconciliation system according to claim 2, characterized in that: The distributed bypass reconciliation system also includes: a storage system; The application programming interface system is further used to register reconciliation tasks for the source application subsystem and the destination application subsystem, and store the reconciliation tasks registered for the source application subsystem and the destination application subsystem in the storage system; The comparison process group is used to obtain the first data from the source application subsystem and the second data from the target application subsystem when the comparison status of the reconciliation task of the storage system is unprocessed, and compare the first data with the second data; when the target comparison result is inconsistent, mark the repair step of the reconciliation task as unprocessed; The repair process group is used to repair the data in the source application subsystem and the target application subsystem when the repair step of the reconciliation task in the storage system is not processed; when the repair result is failure, mark the backtracking step of the reconciliation task as not processed; The backtracking process group is used to roll back data of the source application subsystem and the destination application subsystem when the backtracking step of the reconciliation task in the storage system is not processed.

4. The distributed bypass reconciliation system according to claim 1, characterized in that: The distributed bypass reconciliation system also includes: The process group management system is used to adjust the number of processes in the comparison process group, the repair process group and / or the backtracking process group.

5. The distributed bypass reconciliation system according to claim 1, characterized in that: The comparison process group, the repair process group and the backtracking process group are deployed on a single machine.

6. The distributed bypass reconciliation system according to claim 1, characterized in that: The comparison process group, the repair process group and the backtracking process group are deployed in a distributed manner.

7. The distributed bypass reconciliation system according to claim 3, characterized in that: The storage system includes the following storage modes: Database storage mode, cache storage mode and memory storage mode; The storage system provides a unified storage interface externally.

8. A distributed bypass reconciliation method, characterized in that: Applied in the distributed bypass reconciliation system according to any one of claims 1 to 7; the method comprises: Acquire first data from a source application subsystem, and acquire second data from a destination application subsystem; The first data and the second data are compared and a target comparison result is generated; the repair process group in the distributed bypass reconciliation system is used to repair data of the source application subsystem and the destination application subsystem when the target comparison result is inconsistent; the backtracking process group in the distributed bypass reconciliation system is used to roll back data of the source application subsystem and the destination application subsystem when the repair process group fails.

9. An electronic device, characterized in that: The method comprises a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein when the computer program is executed by the processor, the distributed bypass reconciliation method as claimed in claim 8 is implemented.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by the processor, the distributed bypass reconciliation method as claimed in claim 8 is implemented.