Event Consumer Deployment via State Event Notifications
Find Innovative SolutionsGenerate 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
Engineering 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
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.
2Productivity
If the old event consumer is deactivated before the new event consumer is activated, then duplicate processing is eliminated, but system downtime occurs
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.
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.
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
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.
Data Source
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.


