[rabbitmq-discuss] RabbitMQ for Master worker with monitoring?
Emile Joubert
emile at rabbitmq.com
Wed Dec 22 12:10:24 GMT 2010
Hi Yoav,
On 21/12/10 21:35, yoav glazner wrote:
> This is my first post to this list, so Hi!
> I'm trying to design a Master/Worker implement-ion with RabbitMQ.
> I have a few requierments due to lagacy issues:
> * works get very long tasks so they should be able to get ABORT messages
> while working,
You could send updated status information about work items to a
dedicated status exchange that workers subscribe to in order to obtain
abort messages or changes in priority. This assumes that tasks are
interruptible and that workers have multiple threads of control.
> * no task can be lost
The use persistence and transactions is indicated.
> * each task has priority and that priority may change when the task is
> already in a queue.
If the task is stuck in a long queue you might be able to send a cancel
message via the status exchange and requeue the task at the correct
priority.
> * tasks can be removed from the work queue (user wants to pause/cancel
> an operation)
Depending on exactly what pausing means, this could be accomplished to
sending an appropriate message to the status exchange.
> * An client of rabbitMQ can fetch the Pending tasks to know what is the
> status of the big operation.
If you explain what a bit more about your problem I might be able to
make a suggestion here - what is a big operation?
> After googling I found out that for priorities I'll need a few work
> queues, but will I be able to switch a priority of a task in one
> transaction?
No.
Regards
Emile
More information about the rabbitmq-discuss
mailing list