Clustering कई RabbitMQ nodes को एक single logical broker में जोड़ती है — scalability और (replicated queues के साथ) high availability के लिए। clustering और इसकी बारीकियों को समझना RabbitMQ को scale करने और विश्वसनीय रूप से operate करने के लिए महत्वपूर्ण है।
cluster क्या है
A RabbitMQ CLUSTER = multiple nodes acting as ONE logical broker:
→ nodes share METADATA (queue/exchange definitions, bindings, users, vhosts) across the cluster
→ clients can connect to any node; load is distributed across nodes
→ scales connection/channel capacity and distributes load
cluster में queues (एक महत्वपूर्ण बारीकी)
⚠️ By default, a queue's DATA lives on ONE node (the node where it was declared):
→ other nodes know about the queue (metadata) but route to the owning node
→ if that node FAILS → the queue (and its messages) is UNAVAILABLE
→ so CLUSTERING ALONE does NOT make queues highly available!
→ for HA → use REPLICATED queues (QUORUM QUEUES) that replicate data across nodes
