Segmented Business Process Engine for Scalable Event Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional business process engines are not scalable and lack asynchronicity, relying on central databases for state information, which limits their ability to handle increased workload efficiently.

Innovation Solution

A segmented, distributed business process engine is implemented, decomposing components into separate layers that communicate asynchronously, allowing for scalable and efficient event processing without requiring business process clients to be aware of the decomposed nature, using platforms like Vert.x for asynchronous execution.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If additional business process engines are added to scale the system, then processing capacity increases, but system complexity and database contention increase

Engineering Contradiction:
Improveprocessing capacityVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the monolithic business process engine into multiple independent microservices including event subscription service, event processing service, state management service, and process definition service. Each microservice operates independently with its own data storage, eliminating the bottleneck of centralized database access while maintaining scalable processing capacity.

Inventive Principle:
Principle #1Segmentation

2Reliability

If a central database is used for state information, then data consistency is maintained, but scalability and asynchronicity are limited

Engineering Contradiction:
Improvedata consistencyVSAvoidscalability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements segmentation by distributing state information across multiple independent data stores associated with different microservices. The state management service maintains process instance state separately from the event processing service, allowing each service to manage its own data consistency independently while enabling horizontal scaling.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an event subscription mechanism as an intermediary layer between microservices. Events are published to a subscription system that routes them to appropriate services, enabling asynchronous communication and eliminating direct database coupling while maintaining data consistency through event-driven state transitions.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If atomic transactions are used for event processing, then data integrity is ensured, but asynchronicity and processing speed are reduced

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The patent divides the atomic transaction requirement across segmented microservices, where each service maintains its own transactional integrity for its specific operations. The event processing service processes events asynchronously without requiring global atomic transactions across the entire system, achieving both data integrity at the service level and high processing speed through parallel execution.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements continuous asynchronous event processing where the event processing service continuously consumes and processes events from the subscription system without blocking. Multiple microservices operate in parallel continuously processing different aspects of business events, eliminating the need for sequential atomic transactions while maintaining overall system integrity through event correlation.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9773218B2Segmented business process engine
Publication Date: 2017.09.26 RED HAT INC
  • US9773218B2 patent drawing
  • US9773218B2 patent drawing
  • US9773218B2 patent drawing

AI summary

A method and system for providing a segmented business process engine for generating a result in response to an event message. A process instance identification component of the segmented business process engine identifies a process instance associated with the event message and provides the process instance message to a selected process execution component of the segmented business process engine. The selected process execution component identifies a process definition in view of the process instance message and obtains state information associated with the event from a consistent image store component of the segmented business process engine. The selected process execution component generates a result associated with the event in view of the state information and the process definition and provides the result to at least one of the client application or another process instance identification component.