Сначала отказ от ответственности. Мой опыт связан с SonicMQ, ActiveMQ и TibcoRV. Я расценил ваш вопрос как возможность потратить некоторое время на изучение возможностей RabbitMQ, которые я до сих пор не использовал в гневе.
Вот некоторая информация (пропаганда?), С которой я столкнулся для RabbitMQ ...
Если бы я был на вашем месте, я бы потратил некоторое время и "выбил" решение, используя ActiveMQ (как уже отмечалось в комментариях @ SirRichie , оно также отвечает вашим требованиям) , Я также сделал бы то же самое для RabbitMQ. Попробуйте установить время каждого из них на несколько дней и посмотрите, что вы узнаете!
Кажется, у вас уже есть опыт работы с RabbitMQ, и вы, возможно, уже знаете все это. Извините, если так.
P.S. Вы также можете использовать Amazon SQS. :)