Transaction Processing Server Pipeline Reducing Client Wait Time
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current transaction processing technologies face delays due to network instability and high workloads, leading to long waiting times for clients in online systems where transactions involve multiple systems.
Innovation Solution
A method where a first server processes a transaction request, generates a result, and sends it to a second server to determine and generate a matching result in advance, allowing the second server to send the result directly to the client when requested, thereby reducing waiting time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the client sends requests to multiple transaction systems sequentially via the Internet, then the transaction flow can be completed with multiple systems, but the network instability and delay cause long waiting time for the client
Solution Approach 1:
The first transaction system performs preliminary processing and generates intermediate results before the client completes its request flow. The system proactively pushes intermediate results to subsequent transaction systems in advance, so that when the client sends requests, the systems are already prepared with pre-processed data, significantly reducing client waiting time
Solution Approach 2:
A message queue system acts as an intermediary between transaction systems and the client. The message queue receives, buffers, and forwards messages between systems, decoupling the client from direct network dependencies on multiple systems and smoothing out network instability effects
2Ease of operation
If the transaction systems process requests only after receiving them from the client, then the system follows a simple request-response model, but the high workload causes processing queue delays
Solution Approach 1:
Transaction systems perform processing in advance upon receiving intermediate results from previous systems, rather than waiting for client requests. This preliminary processing creates a pipeline effect where work is done ahead of time, increasing overall productivity without complicating the client interaction model
Solution Approach 2:
The system maintains continuous processing flow by having transaction systems work on intermediate results as they arrive, rather than idle until client requests come in. This continuous action keeps resources utilized and reduces processing queue delays, maintaining operational simplicity while boosting throughput
3Adaptability or versatility
If the client redirects to the next transaction system based on intermediate results, then the transaction flow can proceed through multiple systems, but the network transmission delay extends the overall processing time
Solution Approach 1:
The message queue serves as an intermediary that receives intermediate results from transaction systems and proactively pushes them to the next systems in the flow. This eliminates the need for the client to actively redirect and wait for network responses between systems, maintaining flexible transaction flows while removing transmission delays from the client experience
Solution Approach 2:
The system replaces the mechanical client-driven redirect mechanism with an automated message pushing system. Instead of the client manually navigating between systems based on intermediate results, the message queue automatically routes and pushes data between systems, reducing transmission delays while preserving transaction flow adaptability
Data Source
AI summary
Embodiments of the application provide methods and apparatuses for transaction processing. One method comprises: receiving a first transaction result from a first server, wherein the first transaction result is generated in response to a first transaction request from a client; determining a type corresponding to the first transaction result; generating a second transaction result matching the type corresponding to the first transaction result; and sending the generated second transaction result to the client in response to a second transaction request from the client.


