У меня хорошо настроен сельдерей и я работаю с django.По сигналу post_save я отправляю новую запись в набор с помощью задачи и, используя другую периодическую задачу, пытаюсь использовать этот набор.
from __future__ import absolute_import, unicode_literals
from celery import shared_task
class Data():
def __init__(self):
self.slotshandler = set()
global data
data = Data()
@shared_task
def ProcessMailSending(): #This is a periodic task, running every 30 seconds
global data #This variable is always empty here
while slotshandler:
slot_instance = slotshandler.pop()
print("sending mail for slot } to {} by mail {}".format(slot_instance .id,slot_instance .user,slot_instance .user_mail))
@shared_task
def UpdateSlotHandler(new_slot): #This is called by save_post django signal
global data
data.slotshandler.add(new_slot) #filling the set at each new record
Проблема в том, что эта задача не видит мою новуюдобавлены временные интервалы.обратите внимание, что это приложение django работает на микро-сервисе для отправки пользователям напоминаний.