Какие существуют асинхронный планировщики задач для Python?

Разрабатываю асинхронного TG-бота, в котором пользователь может выбрать время и день недели для получения уведомления, затем инструкция будет циклично повторяться еженедельно Планировщик должен поддерживать персистентность и свойство misfire. При этом самое главное - задачи должны храниться не в ОП (REDIS), а в какой либо иной БД, предпочтительно MySQL Mongo. Работа планировщика и подключение к БД должно быть асинхронным

class NotificationTask(Base, AsyncAttrs):
    __tablename__ = "notification_tasks"

    id = Column(Integer, primary_key=True)
    telegram_user_id = Column(Integer, nullable=False)
    day_of_week = Column(Enum("mon", "tue", "wed", "thu", "fri", "sat", "sun", name="days"), nullable=False)
    time = Column(Time, nullable=False)
    message = Column(String, nullable=False)
    is_active = Column(Boolean, default=True)
    timezone_offset = Column(Integer, default=0)

Планировщик должен периодически проверять активные задачи и отправлять уведомление в указанное пользователем время с учётом его временной зоны. Важно, чтобы всё было асинхронным, включая работу с БД (MySQL или MongoDB). Какие планировщики вы можете посоветовать, чтобы реализовать такую архитектуру?


Ответы (0 шт):