Cluster Event Manager for Reliable Multicast Messaging
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Managing and maintaining state across multiple nodes in a distributed system is challenging, especially when nodes are dynamically added or removed, leading to consistency and coherency issues.
Innovation Solution
The implementation of a cluster event manager with a registration module and event handling and notification module that maintains a service membership list and broadcasts event messages with a service membership list to ensure consistent state and coherency across services.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If nodes are dynamically added or removed in a distributed system, then system adaptability is improved, but state consistency and coherency deteriorate
Solution Approach 1:
The system implements feedback mechanisms where nodes continuously report their state and membership changes to the cluster. The cluster maintains an updated view of all nodes and propagates state information back to ensure consistency. This feedback loop allows the system to adapt to dynamic node changes while maintaining state coherence through continuous synchronization.
Solution Approach 2:
The patent introduces a cluster-level intermediary structure that mediates between individual nodes and the overall system state. This intermediary maintains the global state view and coordinates state propagation across nodes, enabling dynamic membership changes while preserving state consistency through centralized coordination.
2Productivity
If multicast messaging is implemented across distributed services, then communication efficiency is improved, but reliability deteriorates due to node failures and restarts
Solution Approach 1:
The system performs preliminary actions by pre-establishing multicast groups and maintaining recipient lists before failures occur. When nodes join the cluster, they are pre-configured with relevant state information and multicast subscriptions. This preliminary setup ensures that even if nodes fail and restart, the multicast messaging can resume reliably with updated membership information.
Solution Approach 2:
The patent implements cushioning mechanisms by maintaining redundant state information and backup multicast group memberships. When node failures occur, the system has pre-prepared fallback configurations that allow multicast messaging to continue without data loss. This prior cushioning protects against reliability issues caused by dynamic node changes.
3Stability of the object's composition
If service membership changes are tracked in real-time, then state coherency is improved, but system complexity increases
Solution Approach 1:
The patent merges the membership tracking functionality with the existing state management infrastructure. Instead of implementing separate complex tracking systems, the solution integrates node membership information into the current state propagation mechanisms. This merging reduces overall system complexity while maintaining state coherency by utilizing existing architectural components.
Data Source
AI summary
A first event sent from a service belonging to a distributed data management application for one or more other services is received. The service and one or more other services are hosted across nodes of the cluster and the service is a sending service. The first event, including a first membership list listing services that are currently members of the cluster, is broadcast to each service in the cluster. A second event is received indicating that a new service belonging to the application has joined the cluster. The second event, including a second membership list listing services that are currently members of the cluster, is broadcast to each service in the cluster. The second membership list includes the new service. The sending service identifies the new service by comparing the first and second membership lists and determines whether the new service should be sent the first event.


