Требование выглядит следующим образом:Queuing: N производители N потребителей
- Там являются N производителями, которые генерируют сообщения или задание или что вы хотите назвать это.
- Сообщения от каждого обработчика должны обрабатываться в порядке, и каждое сообщение должно обрабатываться ровно один раз.
- Существует еще одно ограничение: в любое время для любого данного производителя должно быть не более одного обрабатываемого сообщения.
- Потребляемая сторона состоит из ряда потоков (они идентичны по своей функциональности), которые распределены по нескольким процессам - это приложение WSGI, выполняемое через mod_wsgi.
На данный момент очереди на потребляющей стороне реализован в виде пользовательской очереди, чтобы подклассы Queue, но у него есть свои проблемы, я не буду вдаваться в, главным из которых является, что после процесса перезагрузки его очередь теряется.
Есть ли продукт, который позволит выполнить требования, изложенные выше? Поддержка настойчивости была бы замечательной, хотя это не так важно (так как очередь больше не будет находиться в памяти рабочего процесса).
[сельдерей] (http://celeryproject.org/) – jterrace