Metadata Store
The metadata store manages retained messages and subscription data across the CybusMQ broker cluster, ensuring efficient replication and cluster scaling.
The metadata store is a core component of CybusMQ that manages retained messages and subscription data across your broker cluster. It ensures that brokers can route messages between publishers and subscribers, even when they are connected to different nodes in the cluster.
How It Works
The metadata store uses a two-tier replication approach to keep data synchronized across all broker nodes:
Primary replication through fast broadcast messages.
Background synchronization processes that ensure consistency across the cluster.
This design provides both high performance and reliable data consistency across your cluster.
Cluster Scaling
When adding new broker nodes to your cluster, the metadata store transfers the necessary data to bring them up to date. The synchronization process runs in the background with minimal impact on your cluster's ongoing operations.
Existing nodes continue handling messages normally while new nodes synchronize, ensuring continuous availability throughout the scaling process.
CybusMQ Enhancements
CybusMQ enhances the standard VerneMQ metadata store with several improvements focused on the performance of anti-entropy (AE) exchanges between broker nodes:
Faster change enumeration: Cache tables enable more efficient tracking of which changes need to be replicated, reducing overhead during inter-node synchronization.
Optimized memory and CPU usage: Improved data structures lower the memory profile and CPU impact when managing concurrent operations. For example, when new metadata is being inserted while a full database replication is in progress during an upscale event.
More resilient startup synchronization: Improved capabilities for synchronizing with a fast-changing remote replica on startup.
Lower CPU usage: Profiling-driven optimizations applied throughout the metadata store result in lower CPU usage.
More detailed logging: Additional log output for improved visibility into broker operations.
Last updated
Was this helpful?

