RabbitMQ" What are "Ready" and "Unacked" types of messages?
A message is Ready when it is waiting to be processed.
When a consumer connects to the queue it gets a batch of messages to process. The amount is given in the prefetch size. While this consumer is working on the messages they get the status unacked.
Unacked means that the consumer has promised to process them but has not acknowledged that they are processed. When the consumer crashed the queue knows which messages are to be delivered again when the consumer comes online. When you have multiple consumers the messages are distributed among them.
Un-acknowledgment: It is used for Data Safety Considerations. it guaranteed to reach the peer and successfully processed. In case consumer lost in-between of processing of message and not acknowledge the Rabbit MQ. message will not lost and available for cosumer to process it again.