FastAPI + Taskiq: отложенные задачи и asyncio
                        
                        Моя огромная образовательная программа про полный цикл разработки веб-приложений на Python: https://taplink.cc/suren
  Подключаем Taskiq + RabbitMQ к нашему FastAPI приложению.   В отличие от Celery, Taskiq позволяет запускать задачи с asyncio. Помимо этого очевидного плюса у Taskiq ещё много преимуществ: использование аннотаций типов, чтобы нам было легче писать код, улучшенная производительность в сравнении с Celery и Dramatiq, а также интеграции с FastAPI, FastStream, aiohttp, aiogram.  В этом видео смотрим на Taskiq + aio-pika, не используем интеграции.  === Правки === Лучше и надежнее применять настройки логгинга в стартапе брокера.  Для брокеров есть механизм, схожий с lifespan: https://taskiq-python.github.io/guide...
 Так что можно сделать вот так:  @broker.on_event(TaskiqEvents.WORKER_STARTUP)   async def startup(state: TaskiqState):       logging.basicConfig(...)  Вот тут изменение в коде: https://github.com/mahenzon/FastAPI-b...
   Ещё, в связке с FastAPI лучше использовать taskiq_fastapi. Так можно будет переиспользовать зависимости из FastAPI в тасках. Например, чтобы было удобнее ходить в БД.  Похоже, что нужен ещё один ролик по Taskiq 🙂  ======   Ранний доступ к моей новой образовательной программе про полный цикл разработки веб-приложений на Python (скидка по ссылке): https://stepik.org/a/232803/pay?promo...
  Общение и самые свежие анонсы в Телеграм: https://t.me/Khorenyan
  Телеграм чат для бустеров (любой уровень) https://boosty.to/mahenzon
  Все-все ссылки на все мои площадки: https://taplink.cc/mahenzon
  Код тут: https://github.com/mahenzon/FastAPI-b...
  Документация: https://taskiq-python.github.io/
   Метки: 00:00 Привет 00:50 Установка 03:22 Подготовка 06:25 Экземпляр 08:30 Настройки 11:03 startup и shutdown 12:47 Задача на отправку письма 23:10 Запуск воркера 26:57 Логирование 30:44 Итоги    
                    
                    
 
  
             
  
             
  
             
  
             
  
             
  
             
  
             
  
             
  
             
  
            