Я, по сути, использую очереди rabbitmq в сельдерее для синхронизации бедняков. Например, когда некоторые объекты обновляются (и имеют высокую стоимость), я округляю их в набор из 10 очередей на основе их идентификаторов объектов. Во-первых, это общая схема или есть лучший способ.
Во-вторых, с celeryd кажется, что опция уровня параллелизма (CELERY_CONCURRENCY) устанавливает количество рабочих во всех очередях. Этот вид поражений с целью использования очередей для синхронизации в качестве очереди может обслуживаться несколькими работниками, что означает потенциальные условия гонки при выполнении различных действий над одним и тем же объектом.
Есть ли способ установить уровень параллелизма (или параметры пула рабочих), чтобы у нас было по одному рабочему на N очередей?
Спасибо
Шри