Transaction Affinity Middleware Request Routing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In middleware environments, existing transaction processing systems face inefficiencies in handling transactions across multiple servers, leading to increased overhead in inter-server coordination and resource management, particularly in load-balancing and global transactions.

Innovation Solution

Implementing transaction affinity based request handling, where a processor associates transactions with specific server instances and routes subsequent requests to existing participants, reducing the need for load-balancing and optimizing resource utilization through the use of transaction interceptors and affinity handlers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If load-balancing is used to distribute transactions across multiple servers, then resource utilization is improved, but inter-server coordination overhead increases

Engineering Contradiction:
Improveresource utilizationVSAvoidinter-server coordination overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by establishing transaction affinity bindings between transaction identifiers and server identifiers before transactions are distributed. The affinity handler pre-configures routing information so that subsequent transaction routing decisions can be made locally without requiring real-time inter-server coordination or communication

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements local quality by making routing decisions local to each server instance based on stored affinity information. Each server maintains local knowledge about which transactions it should handle, eliminating the need for centralized load-balancing coordination and reducing inter-server communication overhead

Inventive Principle:
Principle #3Local quality

2Productivity

If transaction requests are routed to multiple different server instances, then load distribution is improved, but transaction coordination complexity increases

Engineering Contradiction:
Improveload distributionVSAvoidtransaction coordination complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The affinity handler performs preliminary action by pre-establishing bindings between transaction identifiers and target server identifiers. This binding information is stored and reused for all transactions in the same affinity group, allowing multiple transactions to be routed to the same server without requiring complex real-time coordination mechanisms

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses copying by replicating the affinity binding information across relevant system components. Once a transaction-server binding is established, this binding information is copied and stored in the affinity handler, enabling consistent routing decisions without requiring ongoing coordination with the original transaction source

Inventive Principle:
Principle #26Copying

3Reliability

If inter-server communication is increased for transaction coordination, then transaction consistency is improved, but processing throughput decreases

Engineering Contradiction:
Improvetransaction consistencyVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the coordination function from the transaction processing path by separating affinity management into a dedicated affinity handler component. This extraction allows transaction processing to proceed independently using pre-established bindings, removing the need for synchronous inter-server communication during transaction execution and thereby improving throughput while maintaining consistency

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10127122B2System and method for supporting transaction affinity based request handling in a middleware environment
Publication Date: 2018.11.13 ORACLE INT CORP
  • US10127122B2 patent drawing
  • US10127122B2 patent drawing
  • US10127122B2 patent drawing

AI summary

A system and method can support transaction processing in a middleware environment. A processor, such as a remote method invocation stub in the middleware environment, can be associated with a transaction, wherein the transaction is from a first cluster. Then, the processor can handle a transactional request that is associated with the transaction, wherein the transactional request is to be sent to the first cluster. Furthermore, the processor can route the transactional request to a said cluster member in the first cluster, which is an existing participant of the transaction.