Может ли сельдерей назначить задачу указать работника

Сельдерей отправит задачу праздным работникам.

У меня задача будет выполняться каждые 5 секунд, и я хочу, чтобы эта задача была отправлена ​​только одному человеку.

Другие задачи могут разделять левые над рабочими

Может ли сельдерей сделать это?

И я хочу знать, что это за параметр: CELERY_TASK_RESULT_EXPIRES
Означает ли это, что задача не будет отправлена ​​работнику в очереди?
Или он останавливает задачу, если она работает слишком долго?

Что вы можете. Лучший способ сделать это, отдельные работники сельдерея используют разные очереди. Вам просто нужно убедиться, что задание, которое вам нужно, связано с отдельной очередью, и ваш рабочий прослушивает определенную очередь. Длинная история для этого: http://docs.celeryproject.org/en/latest/userguide/routing.html

Чтобы ответить на ваш второй вопрос, CELERY_TASK_RESULT_EXPIRES – это время в секундах, в течение которого результат задачи сохраняется. Таким образом, после завершения задачи его результат сохраняется в вашем исходном бэкэнде. Результат сохраняется там в течение времени, указанного этим параметром. Это используется, когда к результату задачи могут обращаться разные абоненты.

Это, вероятно, не имеет ничего общего с вашей проблемой. Что касается первого решения, как уже было сказано, вы должны использовать несколько очередей. Однако имейте в виду, что вы не можете назначить задачу конкретному рабочему процессу только определенному Работнику, который затем назначит его конкретному Рабочему Процессу.