BPEL Correlation Aggregation for Message Routing Delays

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Business Process Execution Language (BPEL) systems face delays due to their conversational nature, where processes cannot initiate or receive messages unless a specific 'first' message is received, leading to unnecessary waiting when messages from partners are not received in the same order.

Innovation Solution

A system and method that allows any message with a shared identity and operation to instantiate a new business process instance, routing subsequent messages to it, using a database to manage message groups and correlation aggregation, enabling processing to begin without waiting for a designated 'first' message.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If BPEL processes wait for a designated 'first' message to initiate, then message routing reliability is improved, but processing time increases due to unnecessary waiting

Engineering Contradiction:
Improvemessage routing reliabilityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by instantiating a business process instance as soon as the first relevant message is received, before all expected messages are collected. The database is updated to mark the instance as active, enabling subsequent messages to be routed immediately without waiting for a designated first message, thus reducing processing time while maintaining routing reliability through correlation-based message grouping

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes the parameter of message routing decision from requiring a designated 'first' message to using correlation aggregation based on message identities. By changing the routing criterion to match messages with existing active instances or create new instances based on correlation keys, the system eliminates unnecessary waiting time while ensuring reliable routing through correlation-based identification

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If BPEL processes require a designated 'first' message to start, then process initiation control is improved, but productivity decreases due to delays

Engineering Contradiction:
Improveprocess initiation controlVSAvoidprocessing efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system performs preliminary instance creation when any relevant message is received, rather than waiting for a designated first message. The database records message groupings and creates instances immediately, enabling subsequent messages to be routed without delay, thus improving productivity while maintaining control through correlation-based message association

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system enables continuous processing by immediately instantiating business process instances when messages are received, without interruption for waiting on a designated first message. The database continuously tracks message groups and routes messages as they arrive, maintaining continuous useful action and improving productivity while preserving initiation control through correlation aggregation

Inventive Principle:
Principle #20Continuity of useful action

3Speed

If BPEL uses correlation aggregation to route messages, then processing speed is improved, but device complexity increases due to database management requirements

Engineering Contradiction:
Improvemessage routing speedVSAvoiddatabase management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The database serves as an intermediary mechanism that manages correlation aggregation by storing message groupings and tracking active business process instances. This intermediary structure enables fast message routing decisions without complex in-memory management, improving routing speed while containing complexity in a dedicated database layer that handles correlation tracking

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses database records as copies of message groupings and instance states, allowing efficient message routing decisions without maintaining complex in-memory data structures. The database stores correlation information as persistent records that can be queried quickly, improving routing speed while simplifying device complexity by using standard database operations instead of complex memory management

Inventive Principle:
Principle #26Copying

Data Source

PatentUS9020883B2System and method to provide BPEL support for correlation aggregation
Publication Date: 2015.04.28 ORACLE INT CORP
  • US9020883B2 patent drawing
  • US9020883B2 patent drawing
  • US9020883B2 patent drawing

AI summary

A system and method are disclosed for providing BPEL support for correlation aggregation. The system can comprise a business process engine, executing on one or more application servers organized in a cluster. The system can comprise a database including a table which stores records relating to message groups and business process instances. When a message is received by the business process engine, the business process engine can determine an identity associated with the message, and check the database to determine if there is an entry associated with the identity. If there is no entry associated with the identity, then the business process engine can instantiate a first business process instance associated with the identity, and if there is an entry associated with the identity, then the business process engine can route the message to a business process instance associated with the identity.