У меня проблема: иногда rabbitmq или сельдерей теряют задачи
, например:
@periodic_task(run_every=datetime.timedelta(minutes=2))
def gen_task():
print('start')
add.apply_async((1,2), queue='A')
add.apply_async((2,2), queue='B')
@app.task()
def add(a,b)
print(a+b)
gen_task на главном хостев очереди 'celery'
две add задачи, выполняющиеся на разных хостах, в очередях 'A' и 'B'
Так что иногда gen_tasks создают задачи для других узлов,но задачи не посылают за ними ... Я не знаю, почему это так.На самом деле тогда я меняю брокера на redis, он работает правильно.
celery=4.2.1
rabbitmq=3.7.7
python=3.6.5