Yes it is possible. Server cluster for real-time MMO. I am working on this method. We use ActiveMQ, but I think that all this is possible with RabbitMQ.
All items that you mentioned, you go out of the box, except the last.
- each message in the queue is ultimately processed - this is one of the main responsibilities of message brokers
- work is more or less evenly distributed - this is another :)
- the image will be analyzed by only one OCR process - for this there is a difference between / topic and / queue. Topics are like broadcast signals; queues are tasks. You need a queue / queue in your script
To do the final job at will, consumers send an AMQ-specific argument when subscribing to a queue:
activemq.prefetchSize: 1
This parameter ensures that the consumer does not receive more messages after he has taken one, and until he sends ack to AMQ. I believe something like this exists in RabbitMQ.
nkrkv source share