What is the difference between Redis queues and message queues?

recently I saw an article https://codeshelper.com/a/11. with two sentences like this:

lpush+rpop=Queue()
lpush+brpop=Message Queue

suddenly don"t understand the similarities and differences between redis queues and redis message queues? What scenarios do they apply to?
I had a scenario where I used the redis queue and shared it out to see if it was used correctly. It goes like this: in order to prevent high concurrency, I use the redis queue and put the id of the user who grabs the order into the queue. Finally, I only take the first element of the queue, (rpop), because whoever grabs the faster belongs to the queue. I wonder if it will work.

the above three questions, I hope you will ask for advice, thank you

Mar.01,2021
The

BRPOP command is similar to the RPOP command, except that when there are no elements in the list, the BRPOP command blocks the connection until a new element is added.
in addition, Redis is originally single-threaded . If you have an order with one quota, you can just put a string, and if you have this key, you will take it. If not, you will not be able to place an order (the operation of Redis is originally single-threaded)


message queue (RabbidMQ, ActiveMQ,Kafka) has two main usage modes: producer-> consumer, publisher-> subscriber
the first way is one-to-one, the latter is one-to-many
consumption, the data in the team will no longer be saved, which is called burning immediately after reading. The storage and retrieval of message queues are generally different services, which are used for asynchronous operations between services and decouple Synchronize operations.

Redis belongs to the NoSQL type of cache / storage, focusing on supporting fast and repeated reads. The generation and consumption of data may be the same service, or it can be multiple, such as clusters.

EDITED:

the above answer has little to do with the subject's question (please don't be misled without looking at.), carefully.

Menu