Event Consumer Deployment via State Event Notifications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing event-driven systems face challenges in deploying updates to event consumers, leading to downtime, duplicate processing of event notifications, and increased memory usage due to the complexity of setting up separate databases and removing event notifications from the event store.

Innovation Solution

The system employs a method where a new version of an event consumer is deployed while the old version is still active, with the new consumer initially deactivated. A deployment state event notification is published to deactivate the old consumer and activate the new consumer, ensuring seamless transition and minimizing downtime and duplicate processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a new version of an event consumer is deployed while the old version is still active, then system availability is maintained, but duplicate processing of event notifications occurs and memory usage increases

Engineering Contradiction:
Improvesystem availabilityVSAvoidduplicate processing
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by deactivating the old event consumer before the new event consumer becomes active. The deployment state event notification triggers the old consumer to deactivate itself prior to the new consumer taking over, ensuring no duplicate processing occurs while maintaining system availability throughout the transition.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If the old event consumer is deactivated before the new event consumer is activated, then duplicate processing is eliminated, but system downtime occurs

Engineering Contradiction:
Improveduplicate processing eliminationVSAvoidsystem downtime
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary deactivation of the old event consumer through the deployment state event notification, which triggers the old consumer to stop processing before the new consumer activates. This coordinated transition eliminates duplicate processing while minimizing downtime through automated state management.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses feedback mechanisms where the old event consumer publishes deactivation state event notifications to the state event store, and the new event consumer monitors these notifications to coordinate its activation. This feedback loop ensures seamless transition without duplicate processing or downtime.

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If separate databases are set up for version control, then event consumer versioning is achieved, but device complexity and memory usage increase

Engineering Contradiction:
Improveevent consumer versioningVSAvoiddatabase setup complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent merges the version control mechanism into the existing event store infrastructure by using deployment state event notifications stored in the state event store. Instead of requiring separate databases for version control, the system combines version management with the existing event notification mechanism, reducing complexity while maintaining adaptability for versioning.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12217046B2Deployment of new versions of event consumers in an event-driven system
Publication Date: 2025.02.04 CAPITAL ONE SERVICES LLC
  • US12217046B2 patent drawing
  • US12217046B2 patent drawing
  • US12217046B2 patent drawing

AI summary

In some implementations, a system may receive, in a state event store, a deployment state event notification based on deployment of a new event consumer in the system. An old event consumer of the system may retrieve the deployment state event notification from the state event store. The system may deactivate an old event consumer based on retrieving the deployment state event notification, wherein the old event consumer refrains from processing topic event notifications after deactivation and continues to monitor the state event store for state event notifications. The old event consumer may publish a deactivation state event notification to the state event store based on deactivating the old event consumer. The new event consumer may retrieve the deactivation state event notification from the state event store. The system may activate the new event consumer based on retrieving the deactivation state event notification.