Subscription Handler for Message Routing in Process Engines
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In process execution engines, efficiently routing incoming messages to the correct instance and receiving object among concurrently running process instances is challenging due to shared messaging channels, requiring precise correlation and subscription management to ensure accurate message delivery.
Innovation Solution
A process execution engine with a subscription handler and routing manager that defines and initializes subscriptions with correlation expressions, associating them with messaging endpoints and receiving objects, enabling messages to be routed correctly to the intended process instances and objects within, even in scenarios with overlapping or nested subscriptions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If multiple process instances share a common messaging endpoint to receive messages, then resource utilization is improved, but message routing accuracy deteriorates
Solution Approach 1:
The patent segments the message routing process by introducing instance-specific subscriptions that divide the shared messaging endpoint into multiple correlated subscription channels. Each subscription is associated with a specific process instance through correlation expressions, allowing messages to be routed to the correct instance despite the shared endpoint. This segmentation resolves the contradiction by maintaining resource efficiency through sharing while achieving routing accuracy through logical division.
Solution Approach 2:
The patent introduces correlation expressions as intermediaries between the shared messaging endpoint and process instances. These correlation expressions act as mediators that match incoming messages with the appropriate process instance based on message content and instance characteristics. This intermediary mechanism enables accurate routing without requiring separate messaging endpoints for each instance.
2Adaptability or versatility
If correlation expressions are made arbitrary and flexible to handle real-world scenarios, then adaptability is improved, but subscription management complexity increases
Solution Approach 1:
The patent implements a universal subscription management mechanism that handles multiple subscription types and correlation scenarios through a single standardized framework. The subscription handler and routing manager provide multi-functional capabilities to manage arbitrary correlation expressions while maintaining consistent management procedures. This universality allows flexible correlation expressions without proportionally increasing management complexity.
3Manufacturing precision
If multiple subscriptions are defined for different process instances, then message routing accuracy is improved, but system complexity increases
Solution Approach 1:
The patent merges multiple instance-specific subscriptions into a unified subscription management framework. The subscription handler consolidates subscription definitions and the routing manager combines routing logic for all subscriptions into a single coordinated system. This merging approach maintains high routing accuracy through instance-specific subscriptions while reducing overall system complexity through centralized management and shared infrastructure.
Data Source
AI summary
An orchestration engine may execute multiple, concurrently running instances of a process model, where each of the instances of the process model includes one or more receiving objects. A messaging endpoint may be shared by the instances of the process model and may be configured to receive messages. A subscription handler may handle multiple subscriptions for the instances and may be configured to define a first subscription for a first instance of the multiple instances, where the first subscription includes a correlation expression, an association with the messaging endpoint, and an association with a first receiving object within the first instance. The subscription handler also may associate the first subscription with the first instance and initialize the first subscription associated with the first instance. A routing manager may route received messages that match the first subscription to the first receiving object.


