Transaction processing method and device, equipment, medium and program product
By parsing and pre-checking transaction data in distributed transaction processing, the problem of inconsistent transaction information is solved, ensuring that transactions to be processed can be processed in parallel, thus achieving efficient and reliable transaction processing.
Patent Information
- Application Number
- CN202511115245.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-11
- Publication Date
- 2025-11-14
AI Technical Summary
In distributed transaction processing, the inconsistency of transaction information across systems makes it difficult to coordinate when processing transactions, and existing technologies are unable to solve this problem effectively.
By acquiring transaction data, parsing message information, identifying transactions to be processed, and performing pre-checks to ensure simultaneous processing, multiple distributed servers are used for parallel processing. This includes steps such as preprocessing, decryption, checking rule base matching, weight allocation, and transaction slicing to ensure the coordination of transaction transactions.
It solves the problem of inconsistent transaction information between different systems, improves the reliability and efficiency of transaction processing, adapts to the needs of high-concurrency scenarios, and enhances the system's fault tolerance and processing stability.
Smart Images

Figure CN120950189A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of distributed technology, and more specifically to a transaction processing method, apparatus, device, medium, and program product. Background Technology
[0002] In the field of distributed transaction processing, transaction processing is typically based on a dual-core system of distributed and host architectures. However, distributed platform systems deploy different applications on different machines, which can easily lead to serious cross-system accounting coordination problems, resulting in inconsistencies in transaction information between different systems when processing transactions. Summary of the Invention
[0003] In view of the above problems, this application provides a transaction processing method, apparatus, device, medium and program product.
[0004] According to a first aspect of this application, a transaction processing method is provided, comprising: acquiring transaction data of a target transaction; parsing the transaction data to obtain multiple message information of the target transaction; determining multiple pending transactions of the target transaction based on the multiple message information, wherein the multiple message information corresponds one-to-one with the multiple pending transactions; performing pre-checks on the multiple pending transactions respectively to obtain pre-check results, the pre-check results indicating whether the multiple pending transactions can be processed simultaneously; and, in response to the pre-check results indicating that the multiple pending transactions can be processed simultaneously, using multiple distributed servers to process the multiple pending transactions in parallel to obtain processing results.
[0005] According to an embodiment of this application, determining multiple pending transactions of a target transaction based on multiple message information includes performing the following operations for each message information: preprocessing the message information to obtain preprocessed message information; decrypting the preprocessed message information to obtain decrypted message information; and determining one pending transaction of the target transaction based on the decrypted message information.
[0006] According to the embodiments of this application, a pre-check is performed on a plurality of pending transactions, including performing the following operations for each pending transaction: matching a corresponding check operation for the pending transaction from a preset check rule base, wherein the check rule base stores a plurality of check operations; and performing the check operation on the pending transaction.
[0007] According to embodiments of this application, multiple pending transactions are processed in parallel, including performing the following operations for each pending transaction: determining an associated operation related to the inspection operation of the pending transaction; and performing the associated operation on the pending transaction.
[0008] According to embodiments of this application, a pre-check is performed on multiple pending transactions, including: determining the processing priority of multiple pending transactions; assigning weights to multiple pending transactions according to a preset weight allocation algorithm to obtain multiple target weights, wherein the target weights represent the processing priority of multiple pending transactions; and performing a pre-check on multiple pending transactions according to the processing priority.
[0009] According to an embodiment of this application, the transaction processing method further includes: in response to receiving the result that multiple pending transactions cannot be processed simultaneously, performing a pre-check on the multiple pending transactions again after a first preset time period.
[0010] According to an embodiment of this application, in response to receiving the result that multiple pending transactions can be processed simultaneously, before using multiple distributed servers to process multiple pending transactions in parallel, the method further includes: in response to receiving the result that multiple pending transactions cannot be processed simultaneously, storing multiple pending transactions in a pre-set memory; after every second preset time interval, performing transaction slicing on at least one pending transaction in the memory to obtain multiple pending sub-transactions; performing pre-checks on the multiple pending sub-transactions, and removing at least one pending transaction from the memory.
[0011] According to an embodiment of this application, the transaction processing method further includes: monitoring the real-time processing information of each pending transaction.
[0012] According to an embodiment of this application, a second aspect of this application provides a transaction processing apparatus, comprising: a transaction initiating terminal, configured to acquire transaction data of a target transaction; a wireless communication operator server, configured to parse the transaction data to obtain multiple message information of the target transaction; a front-end server, configured to determine multiple pending transactions of the target transaction based on the multiple message information, wherein the multiple message information corresponds one-to-one with the multiple pending transactions; multiple distributed servers, configured to perform pre-checks on the multiple pending transactions respectively to obtain pre-check results, the pre-check results indicating whether the multiple pending transactions can be processed simultaneously; and in response to receiving a successful result from a service check indicating that the multiple pending transactions can be processed simultaneously, using multiple distributed servers to process the multiple pending transactions in parallel to obtain a processing result.
[0013] A third aspect of this application provides an electronic device comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the method described above.
[0014] A fourth aspect of this application also provides a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed by a processor, implement the steps of the above-described method.
[0015] The fifth aspect of this application also provides a computer program product, including a computer program or instructions that, when executed by a processor, implement the steps of the above-described method. Attached Figure Description
[0016] The above-mentioned contents, other objects, features and advantages of this application will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:
[0017] Figure 1 The illustrations depict application scenarios of transaction processing methods, apparatuses, devices, media, and program products according to embodiments of this application.
[0018] Figure 2 A flowchart illustrating a transaction processing method according to an embodiment of this application is shown schematically.
[0019] Figure 3 A flowchart illustrating the determination of message information according to an embodiment of this application is shown schematically;
[0020] Figure 4 This illustration schematically shows an example diagram of parallel processing of multiple pending transactions according to an embodiment of this application;
[0021] Figure 5 A flowchart illustrating weight allocation according to an embodiment of this application is shown schematically;
[0022] Figure 6 A flowchart illustrating a transaction slicing according to an embodiment of this application is shown schematically;
[0023] Figure 7 A schematic diagram illustrating the structure of a transaction processing apparatus according to an embodiment of this application is shown; and
[0024] Figure 8 A block diagram schematically illustrates an electronic device suitable for implementing a transaction processing method according to an embodiment of this application. Detailed Implementation
[0025] The embodiments of this application will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of this application. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of this application for ease of explanation. However, it will be apparent that one or more embodiments may be implemented without these specific details. Furthermore, descriptions of well-known structures and technologies are omitted in the following description to avoid unnecessarily obscuring the concepts of this application.
[0026] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the scope of this application. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0027] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.
[0028] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).
[0029] In the technical solution of this application, the user information (including but not limited to user personal information, user image information, user device information, such as location information) and data (including but not limited to data used for analysis, stored data, and displayed data) involved are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, storage, use, processing, transmission, provision, disclosure, and application of related data all comply with relevant laws, regulations, and standards, take necessary confidentiality measures, do not violate public order and good morals, and provide corresponding operation entry points for users to choose to authorize or refuse.
[0030] In scenarios involving automated decision-making using personal information, the methods, devices, and systems provided in this application all offer users corresponding entry points for choosing to agree to or reject the automated decision-making results. If the user chooses to reject, the process proceeds to the expert decision-making stage. Here, "automated decision-making" refers to the activity of automatically analyzing and evaluating an individual's behavioral habits, interests, or economic, health, and credit status through computer programs, and then making a decision. Here, "expert decision-making" refers to the activity of making decisions by personnel who specialize in a particular field, possess specialized experience, knowledge, and skills, and have reached a certain level of professional expertise.
[0031] The embodiments of this application provide a transaction processing method that, through preprocessing before formally processing the transactions to be processed, ensures that multiple transactions to be processed can be carried out in a coordinated manner, thereby solving the problem of inconsistent transaction information between different systems during transaction processing.
[0032] Figure 1 The diagram illustrates an application scenario of the transaction processing method according to an embodiment of this application.
[0033] like Figure 1 As shown, application scenario 100 according to this embodiment may include a first terminal device 101, a first server 102, a second server 103, a network 104, and multiple third servers 105. The network 104 serves as a medium for providing communication links between the first terminal device 101 and the first server 102, the second server 103, and the multiple third servers 105. The network 104 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.
[0034] Users can use the first terminal device 101 to interact with the first server 102, the second server 103, and multiple third servers 105 via network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social media platform software, etc. (for example only).
[0035] The first terminal device 101 can be various electronic devices with a display screen and support web browsing, including but not limited to smartphones, tablets, laptops, and desktop computers.
[0036] The first server 102, the second server 103, the network 104, and multiple third servers 105 can be servers that provide various services, such as a backend management server that supports the website browsed by the user using the first terminal device 101 (for example only). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal device.
[0037] It should be noted that the transaction processing method provided in this application embodiment can generally be executed by the first terminal device 101 or by the software installed in the first terminal device 101.
[0038] Please continue reading. Figure 1 Taking a transaction scenario as an example, the first terminal device 101 first collects the transaction data of the target transaction and sends the transaction data to the first server 102 via the network 104. The first server 102 parses the transaction data to obtain multiple message information of the target transaction and sends the multiple message information to the second server 103. The second server 103 determines multiple pending transactions of the target transaction based on the multiple message information and sends each of the multiple pending transactions to multiple third servers 105. The multiple third servers 105 can perform pre-checks on the multiple pending transactions, obtain check results, and then process the multiple pending transactions in parallel based on the check results to obtain the processing result.
[0039] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0040] The following will be based on Figure 1 The described scene, through Figures 2-6 The transaction processing method according to the embodiments of this application will be described in detail.
[0041] Figure 2 A flowchart illustrating a transaction processing method according to an embodiment of this application is shown.
[0042] like Figure 2 As shown, the transaction processing method of this embodiment includes operations S210 to S250.
[0043] In operation S210, the transaction data of the target transaction is obtained.
[0044] In some embodiments, transaction data related to the target transaction can be collected in real time from a bank's dual-core system environment. This transaction data may include the following core fields: globally unique transaction serial number, initiator / receiver account identifier, transaction amount, transaction type code, transaction status flag of the host system, and service call timestamps of distributed nodes, etc.
[0045] The process of acquiring transaction data can be achieved by combining asynchronous listening with active retrieval, covering three major data sources: host transaction log files, persistent queues of distributed message middleware, and database transaction logs. This ensures that the complete operation trajectory can be captured throughout the entire lifecycle of the target transaction.
[0046] During operation S220, the transaction data is parsed to obtain multiple message information of the target transaction.
[0047] In some embodiments, the parsing process of transaction data can be based on a pre-defined message specification library, deconstructing it layer by layer. Specifically, the process might involve: first, identifying the encoding format of the data source and converting it to standard text using a character set conversion engine; then, extracting key fields according to field segmentation rules (e.g., splitting a 128-byte fixed-length message into 20 fields, where the key field of the third field is, for example, the transaction type code, and the key field of the fourth field is, for example, the amount field); and finally, performing semantic standardization to map heterogeneous system terms to a unified transaction model. The generated message information can include a protocol header and metadata, with each message corresponding to an atomic operation node on the transaction chain.
[0048] In operation S230, multiple pending transactions of the target transaction are determined based on multiple message information, wherein each message information corresponds one-to-one with a single pending transaction.
[0049] In some embodiments, discrete messages can be aggregated into logical transaction units using an association analysis algorithm, with the global transaction serial number as the root node. Parent-child relationships between messages are then established using association identifiers within the messages, and the operation sequence is reconstructed based on the message timestamp sequence. Finally, a business rule base is used to identify transaction boundaries, resulting in multiple transactions to be processed. The fields of the generated transactions to be processed may include transaction identifiers, transaction types, resource operation sets, and transaction dependencies, with each transaction maintaining a one-to-one mapping relationship with the original message.
[0050] In operation S240, multiple pending transactions are pre-checked to obtain pre-check results, which indicate whether multiple pending transactions can be processed simultaneously.
[0051] In some embodiments, the pre-check process for multiple pending transactions is used to perform resource reservation and operation rehearsal for these transactions. For each pending transaction, firstly, business constraint verification can be initiated by retrieving the latest transaction data from the host core accounting system in real time and simulating the resource state after transaction execution. Secondly, resource pre-occupancy registration is performed, for example, by creating temporary placeholders in the distributed resource manager. This operation ensures that resources are isolated during the pre-check period without actual data changes. Finally, operation feasibility verification is performed, for example, by calling the target system's pre-execution interface to obtain the theoretical response and simultaneously checking the availability of external dependencies. If all three verifications pass, the transaction is marked as executable and resource pre-occupancy credentials are retained. If any step fails, the transaction is marked as unexecutable, and the resource placeholders are immediately released and the reason for the blockage is recorded. This process can ensure strong consistency between the check results and the resource state through an atomic snapshot mechanism.
[0052] If every pending transaction is in an executable state, the pre-check result is set to indicate that multiple pending transactions can be processed simultaneously, and subsequent operations are performed. If at least one pending transaction is in an unexecutable state, the pre-check result is set to indicate that multiple pending transactions cannot be processed simultaneously.
[0053] In operation S250, in response to the pre-check result indicating that multiple pending transactions can be processed simultaneously, multiple distributed servers are used to process multiple pending transactions in parallel to obtain the processing result.
[0054] In some embodiments, once the pre-check confirms that all transactions are executable, the resource placeholder credential is automatically converted into a formal operation instruction. The distributed server then calls the corresponding final execution interface based on the credential type to process multiple pending transactions.
[0055] Embodiments of this application provide a transaction processing method that divides a transaction into multiple pending transactions and pre-checks each transaction before formal processing to determine if they can be processed collaboratively. After the checks, the multiple pending transactions are processed in parallel. This method can resolve the problem of inconsistencies in transaction information between different systems during transaction processing.
[0056] Figure 3 A flowchart illustrating the determination of message information according to an embodiment of this application is shown schematically.
[0057] According to an embodiment of this application, the above-described operation S230, which determines multiple pending transactions of the target transaction based on multiple message information, includes performing operations S331 to S333 for each of the multiple message information.
[0058] In operation S331, the message information is preprocessed to obtain the preprocessed message information.
[0059] In operation S332, the preprocessed message information is decrypted to obtain the decrypted message information.
[0060] In operation S333, a pending transaction of the target transaction is determined based on the decrypted message information.
[0061] In some embodiments, such as Figure 3 As shown, the process of determining multiple pending transactions of the target transaction can be achieved through multi-level message processing. For example, the received multiple raw message information can first be preprocessed, including format standardization (such as unified encoding and removal of invalid characters), integrity verification (such as checking whether required fields are missing), and basic noise reduction (such as filtering duplicate or abnormal messages) to ensure that the messages conform to the system processing specifications.
[0062] The preprocessed messages are then securely decrypted, and the corresponding decryption algorithm is matched according to the message type to restore the original business data in the messages. Finally, key information is extracted based on the decrypted business data, and combined with preset transaction mapping rules, each message is transformed into a pending transaction corresponding to the target transaction, providing structured input for subsequent transaction processing.
[0063] The embodiments of this application ensure that the message information is formatted correctly and the data is secure through preprocessing and decryption processes, providing accurate and complete input for subsequent transaction processing, reducing processing interruptions caused by message anomalies, and improving overall processing reliability.
[0064] According to the embodiments of this application, a pre-check is performed on a plurality of pending transactions, including performing the following operations for each pending transaction: matching a corresponding check operation for the pending transaction from a preset check rule base, wherein the check rule base stores a plurality of check operations; and performing the check operation on the pending transaction.
[0065] In some embodiments, for each pending transaction, the system first dynamically matches the corresponding check operation from the check rule base based on its business type (such as payment, clearing, and reconciliation) or key fields (such as transaction amount and participant identification). The matched check operations are then executed sequentially, completing data checks through automated scripts or API calls, and the check results are recorded. If a check fails, an exception handling process is triggered (such as marking the transaction as pending repair or terminating processing), ensuring that all pending transactions meet both business logic and system security requirements before entering the core processing flow.
[0066] The embodiments of this application are based on automated pre-checks of the rule base to identify compliance risks in advance, avoid invalid transactions from consuming resources, reduce the failure rate of subsequent processing, and ensure that business logic complies with specifications.
[0067] Figure 4 An example diagram illustrating parallel processing of multiple pending transactions according to an embodiment of this application is shown.
[0068] According to embodiments of this application, multiple pending transactions are processed in parallel, including performing the following operations for each pending transaction: determining an associated operation related to the inspection operation of the pending transaction; and performing the associated operation on the pending transaction.
[0069] In some embodiments, such as Figure 4 As shown, the current transaction scenario is a payment order scenario in a certain transaction system. In the current scenario, after payment for an order, the following operations are required: changing the order status, deducting product inventory, increasing the transacting party's transaction points, and creating a sales order and notifying the warehouse to ship the goods. It should be understood that all of the above operations must be successfully executed to complete a whole transaction. For example, if the current order status has been changed to "paid," but the inventory service fails to deduct inventory at this time, it will cause an error in the inventory operation database, the inventory quantity will remain unchanged, and a data inconsistency will occur.
[0070] Therefore, in the embodiments of this application, each operation can be pre-checked. For example, in the order service, the corresponding order in the order database is modified to a "ready to update" status. In the inventory service, the sold portion in the inventory database is frozen. In the points service, the points of the corresponding transacting party are pre-added to the points database. In the warehousing service, a sales delivery order is pre-created and its status is marked as "ready to be issued." That is, through pre-checking operations, resources are reserved and operations are rehearsed in advance for each operation, and then the actual processing is carried out according to the associated operations corresponding to each checked operation. For example, the associated operation of modifying the corresponding order in the order database to a "ready to update" status can be to modify the order status to "updated." The associated operation of freezing the sold portion in the inventory database can be to subtract the frozen portion from the inventory database. The associated operation of pre-adding the points of the corresponding transacting party in the points database can be to add the points of the corresponding transacting party. The associated operation of pre-creating a sales delivery order and marking its status as "ready to be issued" can be to modify the delivery order status to "created."
[0071] The embodiments of this application break the linear execution limitation by parallel processing of associated operations, and use distributed resources to complete data verification, permission review and other operations at the same time, which significantly shortens the processing time of a single transaction and adapts to the needs of high concurrency scenarios.
[0072] Figure 5 A flowchart illustrating weight allocation according to an embodiment of this application is shown.
[0073] According to an embodiment of this application, the pre-checking of multiple pending transactions in the above-described operation S240 includes the following operations S541 to S542.
[0074] In operation S541, the processing priority of multiple pending transactions is determined.
[0075] In operation S542, multiple pending transactions are pre-checked according to processing priority.
[0076] In some embodiments, such as Figure 5 As shown, processing efficiency can be optimized through priority-driven sequential checks. First, the processing priority of each pending transaction can be determined based on its attributes (such as urgency, amount, and customer level). For example, high-priority transactions include large, urgent payments, while low-priority transactions are for routine reconciliation. A preset weighting algorithm can be used to assign weights to multiple pending transactions, resulting in multiple target weights, each representing the processing priority of the transactions. Then, the processing priority of each pending transaction is determined using these target weights, where higher weights indicate higher priority. Finally, the corresponding checks are executed sequentially according to the weights from highest to lowest, ensuring that high-priority transactions complete compliance verification first, preventing low-priority transactions from consuming resources and causing delays in critical business operations. Furthermore, dynamic weight adjustment allows for flexible priority adaptation.
[0077] The embodiments of this application dynamically adjust the inspection order by prioritizing, ensuring that high-urgency and high-value transactions are processed first, optimizing resource allocation, improving the response speed of critical business, and avoiding delays in core processes caused by low-priority transactions.
[0078] According to an embodiment of this application, the transaction processing method further includes: in response to receiving the result that multiple pending transactions cannot be processed simultaneously, performing a pre-check on the multiple pending transactions again after a first preset time period.
[0079] In some embodiments, a retry mechanism can be used to handle transaction processing conflicts. When the system detects that multiple pending transactions cannot be processed simultaneously due to resource contention, dependency conflicts, or excessive system load, processing can be prevented from being terminated immediately. Instead, the transactions are marked as pending retry, and a second pre-check is automatically triggered after a first preset duration (e.g., 30 seconds). During the second check, the system reassesses resource availability, dependency status, and system load. If the conditions are met, the processing flow is re-entered, avoiding transaction backlog due to momentary resource shortages and improving the system's fault tolerance and processing stability. Furthermore, the time for subsequent checks is increased by the first preset duration to give the system more time for self-repair.
[0080] The embodiments of this application avoid the problem of transactions being terminated due to momentary resource shortage by using an automatic retry mechanism after a delay in the event of a conflict, thereby improving the fault tolerance of the system, reducing manual intervention, and ensuring the final completion rate of transactions.
[0081] Figure 6 A flowchart illustrating a transaction slice according to an embodiment of this application is shown schematically.
[0082] According to an embodiment of this application, before the above-described operation S240, which employs multiple distributed servers to process multiple pending transactions in parallel, operations S651 to S653 are also included.
[0083] In operation S651, in response to receiving the result that multiple pending transactions cannot be processed simultaneously, the multiple pending transactions are stored in a pre-configured memory.
[0084] In operation S652, after every second preset time interval, at least one pending transaction in the memory is sliced to obtain multiple pending sub-transactions.
[0085] In operation S653, a pre-check is performed on multiple pending sub-transactions, and at least one pending transaction is removed from memory.
[0086] In some embodiments, such as Figure 6 As shown, the transaction processing flow can be optimized through a storage slice retry mechanism. When multiple pending transactions cannot be processed simultaneously, they can be temporarily stored in a pre-set memory to avoid transaction loss. Subsequently, every second preset time interval, a portion of the pending transactions (e.g., sorted by time order or priority) are retrieved from memory, and transaction slices are performed on them, breaking down large transactions into multiple independent sub-transactions. Afterward, a pre-check is re-performed on the sliced sub-transactions, and those that pass the check are removed from memory and proceed to the next processing flow. Sub-transactions that fail the check remain in memory awaiting the next slice and check. This step-by-step processing reduces the pressure on a single processing cycle and improves overall processing efficiency.
[0087] The embodiments of this application split large transactions into independently processable sub-transactions through a storage slice retry mechanism, reducing the processing pressure per transaction. Combined with timed retries, it flexibly addresses resource constraints, improves the efficiency of processing backlogged transactions, and avoids long waiting times during transaction processing.
[0088] According to an embodiment of this application, the transaction processing method further includes: monitoring the real-time processing information of each pending transaction.
[0089] In some embodiments, the execution process of each pending transaction can be tracked across the entire chain. Monitoring includes processing progress (e.g., preprocessing, checking, executing, completed), status changes (e.g., from pending to processing or failed), error messages (e.g., database connection failure, validation rule failure), and resource consumption (e.g., CPU and memory usage). Monitoring data can be visualized through a monitoring platform, and threshold alarms can be set. When an anomaly is detected, a compensation mechanism can be automatically triggered to ensure the reliability and traceability of transaction processing, providing data support for subsequent troubleshooting and performance optimization.
[0090] The embodiments of this application can monitor the entire processing status in real time and trigger compensation in a timely manner through threshold alarms to ensure transaction controllability, provide data support for problem investigation and performance optimization, and improve system reliability.
[0091] Based on the above-described transaction processing method, this application also provides a transaction processing apparatus. The following will be combined with... Figure 7 The device is described in detail.
[0092] Figure 7 A schematic block diagram of a transaction processing apparatus according to an embodiment of this application is shown.
[0093] like Figure 7 As shown, the transaction processing apparatus 700 of this embodiment includes a transaction initiation terminal 710, a wireless communication operator server 720, a front-end server 730, and multiple distributed servers 740.
[0094] The transaction initiating terminal 710 is used to acquire the transaction data of the target transaction. In one embodiment, the transaction initiating terminal 710 can be used to perform the operation S210 described above, which will not be repeated here.
[0095] The wireless communication operator server 720 is used to parse the transaction data to obtain multiple message information of the target transaction. In one embodiment, the wireless communication operator server 720 can be used to perform the operation S220 described above, which will not be repeated here.
[0096] The front-end server 730 is used to determine multiple pending transactions of the target transaction based on the multiple message information, wherein the multiple message information corresponds one-to-one with the multiple pending transactions. In one embodiment, the front-end server 730 can be used to execute the operation S230 described above, which will not be repeated here.
[0097] Multiple distributed servers 740 are used to pre-check the multiple pending transactions respectively, and obtain pre-check results, wherein the pre-check results indicate whether the multiple pending transactions can be processed simultaneously; and in response to receiving a successful result from the business that the multiple pending transactions can be processed simultaneously, the multiple distributed servers process the multiple pending transactions in parallel to obtain processing results. In one embodiment, the multiple distributed servers 740 can be used to execute the operations S240 and S250 described above, which will not be repeated here.
[0098] According to embodiments of this application, any multiple modules among the transaction initiation terminal 710, wireless communication operator server 720, front-end server 730, and multiple distributed servers 740 can be merged into one module, or any one of these modules can be split into multiple modules. Alternatively, at least some of the functions of one or more of these modules can be combined with at least some of the functions of other modules and implemented in one module. According to embodiments of this application, at least one of the transaction initiation terminal 710, wireless communication operator server 720, front-end server 730, and multiple distributed servers 740 can be at least partially implemented as hardware circuitry, such as field-programmable gate arrays (FPGAs), programmable logic arrays (PLAs), systems-on-a-chip, systems-on-a-substrate, systems-on-package, application-specific integrated circuits (ASICs), or any other reasonable means of integrating or packaging circuitry, or implemented in software, hardware, or firmware, or in any one or a suitable combination of any of these three implementation methods. Alternatively, at least one of the transaction initiation terminal 710, the wireless communication operator server 720, the front-end server 730, and the plurality of distributed servers 740 may be implemented at least partially as a computer program module, which can perform corresponding functions when the computer program module is run.
[0099] Figure 8 A block diagram schematically illustrates an electronic device suitable for implementing a transaction processing method according to an embodiment of this application.
[0100] like Figure 8As shown, an electronic device 800 according to an embodiment of this application includes a processor 801, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 802 or a program loaded from a storage portion 808 into a random access memory (RAM) 803. The processor 801 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 801 may also include onboard memory for caching purposes. The processor 801 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of this application.
[0101] RAM 803 stores various programs and data required for the operation of electronic device 800. Processor 801, ROM 802, and RAM 803 are interconnected via bus 804. Processor 801 executes various operations of the method flow according to embodiments of this application by executing programs in ROM 802 and / or RAM 803. It should be noted that the programs may also be stored in one or more memories other than ROM 802 and RAM 803. Processor 801 may also execute various operations of the method flow according to embodiments of this application by executing programs stored in said one or more memories.
[0102] According to embodiments of this application, the electronic device 800 may further include an input / output (I / O) interface 805, which is also connected to a bus 804. The electronic device 800 may also include one or more of the following components connected to the input / output (I / O) interface 805: an input section 806 including a keyboard, mouse, etc.; an output section 807 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a LAN card, modem, etc. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the input / output (I / O) interface 805 as needed. A removable medium 811, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 810 as needed so that computer programs read from it can be installed into the storage section 808 as needed.
[0103] This application also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs, which, when executed, implement the method according to the embodiments of this application.
[0104] According to embodiments of this application, the computer-readable storage medium can be a non-volatile computer-readable storage medium, such as including but not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this application, the computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to embodiments of this application, the computer-readable storage medium may include ROM 802 and / or RAM 803 and / or one or more memories other than ROM 802 and RAM 803 described above.
[0105] Embodiments of this application also include a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. When the computer program product is run on a computer system, the program code enables the computer system to implement the transaction processing method provided in the embodiments of this application.
[0106] When the computer program is executed by the processor 801, it performs the functions defined in the system / apparatus of this application embodiment. According to the embodiments of this application, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0107] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and may be downloaded and installed via the communication section 809, and / or installed from a removable medium 811. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.
[0108] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 809, and / or installed from the removable medium 811. When the computer program is executed by the processor 801, it performs the functions defined in the system of this application embodiment. According to the embodiments of this application, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0109] According to embodiments of this application, program code for executing the computer programs provided in the embodiments of this application can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, languages such as Java, C++, Python, "C", or similar programming languages. The program code can be executed entirely on the user's computing device, partially on the user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0110] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0111] Those skilled in the art will understand that the features described in the various embodiments of this application can be combined and / or combined in various ways, even if such combinations or combinations are not explicitly described in this application. In particular, the features described in the various embodiments of this application can be combined and / or combined in various ways without departing from the spirit and teachings of this application. All such combinations and / or combinations fall within the scope of this application.
Claims
1. A transaction processing method, characterized in that, The method includes: Obtain the transaction data of the target transaction; The transaction data is parsed to obtain multiple message information of the target transaction; Multiple pending transactions of the target transaction are determined based on the multiple message information, wherein each of the multiple message information corresponds one-to-one with the multiple pending transactions; Each of the multiple pending transactions is pre-checked to obtain a pre-check result, which indicates whether the multiple pending transactions can be processed simultaneously. In response to the pre-check result indicating that the multiple pending transactions can be processed simultaneously, multiple distributed servers are used to process the multiple pending transactions in parallel to obtain the processing result of the transaction data.
2. The method according to claim 1, characterized in that, The step of determining multiple pending transactions of the target transaction based on the multiple message information includes performing the following operations for each of the multiple message information: The message information is preprocessed to obtain preprocessed message information; The preprocessed message information is decrypted to obtain the decrypted message information; Based on the decrypted message information, a pending transaction of the target transaction is determined.
3. The method according to claim 1, characterized in that, The pre-checking of the plurality of pending transactions includes performing the following operations for each of the plurality of pending transactions: From a preset check rule base, a corresponding check operation is matched for the transaction to be processed. The check rule base stores multiple check operations. Perform the inspection operation on the pending transaction.
4. The method according to claim 3, characterized in that, The parallel processing of the plurality of pending transactions includes performing the following operations for each of the plurality of pending transactions: Determine the associated operations related to the inspection operation of the pending transaction; Perform the associated operation on the pending transaction.
5. The method according to claim 1, characterized in that, The pre-checking of the plurality of pending transactions includes: Determine the processing priority of the plurality of pending transactions; The plurality of pending transactions are pre-checked according to the processing priority.
6. The method according to claim 1, characterized in that, The method further includes: In response to receiving the result that the multiple pending transactions cannot be processed simultaneously, the multiple pending transactions are pre-checked again after a first preset time period.
7. The method according to claim 1, characterized in that, Before employing multiple distributed servers to process the multiple pending transactions in parallel, the method further includes: In response to receiving the result that the multiple pending transactions cannot be processed simultaneously, the multiple pending transactions are stored in a pre-set memory; After every second preset time interval, at least one pending transaction in the memory is sliced to obtain multiple pending sub-transactions; The plurality of pending sub-transactions are pre-checked, and at least one pending transaction is removed from the memory.
8. The method according to claim 1, characterized in that, The method further includes: Monitor the real-time processing information of each of the pending transactions.
9. A transaction processing apparatus, characterized in that, The device includes: The transaction initiation terminal is used to obtain the transaction data of the target transaction; A wireless communication operator server is used to parse the transaction data to obtain multiple message information of the target transaction; and A front-end server is used to determine multiple pending transactions of the target transaction based on the multiple message information, wherein the multiple message information corresponds one-to-one with the multiple pending transactions; Multiple distributed servers are used to pre-check the multiple pending transactions respectively to obtain pre-check results, the pre-check results indicating whether the multiple pending transactions can be processed simultaneously; and in response to receiving the result that the multiple pending transactions can be processed simultaneously and successfully checked, the multiple distributed servers are used to process the multiple pending transactions in parallel to obtain processing results.
10. An electronic device, comprising: One or more processors; Memory, used to store one or more computer programs. The characteristic feature is that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 8.
11. A computer-readable storage medium having a computer program or instructions stored thereon, characterized in that, When the computer program or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 8.
12. A computer program product, comprising a computer program or instructions, characterized in that, When the computer program or instructions are executed by a processor, they implement the steps of the method according to any one of claims 1 to 8.