About RabbitMQ two concept is unknow to me, cluster
and node
? what is different between them?
A RabbitMQ node is the basic "message broker" service (process running on a server) which provides core RabbitMQ features such as exchanges, virtual hosts, queues, etc. You need at least one RabbitMQ node to be up-and-running, to use RabbitMQ.
A RabbitMQ cluster is simply a grouping of one or more RabbitMQ nodes. From the documentation, a cluster is:
"a logical grouping of one or several nodes, each sharing users, virtual hosts, queues, exchanges, bindings, runtime parameters and other distributed state.".
Why can it be useful to place nodes in a cluster? Again from the documentation:
Clustering nodes can help improve availability, data safety of queue contents and sustain more concurrent client connections.
So, a cluster of nodes gives you more flexibility (than a single node), about how you design and provide your overall RabbitMQ services.
The terms "node" and "cluster" are not specific to RabbitMQ - they are fairly generic terms, used much more widely than just for RabbitMQ.