home.social

#faststream — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #faststream, aggregated by home.social.

  1. Как мы переписывали логику очередей: Celery => aio-pika => FastStream

    Наш путь активной работы с очередями RabbitMQ начался с классического Celery. Осознав критичность низкоуровневого контроля системы, принялись работать с aio-pika. Но и этот уровень слишком местами сложный (далее расскажу почему), и нашли отличное решение, на текущий момент, в лице FastStream. Сразу оставлю такую пометку, что каждый инструмент подходит для решения своей задачи. Мы больше хотели сделать акцент на удобство и скорость разработки относительно затрачиваемого времени на миграции решений. N.B. : Код возможно покажется неоптимальным или старым. Это всё наш дорогой Легаси.

    habr.com/ru/articles/1030082/

    #celery #rabbitmq #faststream #aiopika #python3

  2. Как мы переписывали логику очередей: Celery => aio-pika => FastStream

    Наш путь активной работы с очередями RabbitMQ начался с классического Celery. Осознав критичность низкоуровневого контроля системы, принялись работать с aio-pika. Но и этот уровень слишком местами сложный (далее расскажу почему), и нашли отличное решение, на текущий момент, в лице FastStream. Сразу оставлю такую пометку, что каждый инструмент подходит для решения своей задачи. Мы больше хотели сделать акцент на удобство и скорость разработки относительно затрачиваемого времени на миграции решений. N.B. : Код возможно покажется неоптимальным или старым. Это всё наш дорогой Легаси.

    habr.com/ru/articles/1030082/

    #celery #rabbitmq #faststream #aiopika #python3

  3. Как мы переписывали логику очередей: Celery => aio-pika => FastStream

    Наш путь активной работы с очередями RabbitMQ начался с классического Celery. Осознав критичность низкоуровневого контроля системы, принялись работать с aio-pika. Но и этот уровень слишком местами сложный (далее расскажу почему), и нашли отличное решение, на текущий момент, в лице FastStream. Сразу оставлю такую пометку, что каждый инструмент подходит для решения своей задачи. Мы больше хотели сделать акцент на удобство и скорость разработки относительно затрачиваемого времени на миграции решений. N.B. : Код возможно покажется неоптимальным или старым. Это всё наш дорогой Легаси.

    habr.com/ru/articles/1030082/

    #celery #rabbitmq #faststream #aiopika #python3

  4. Как мы переписывали логику очередей: Celery => aio-pika => FastStream

    Наш путь активной работы с очередями RabbitMQ начался с классического Celery. Осознав критичность низкоуровневого контроля системы, принялись работать с aio-pika. Но и этот уровень слишком местами сложный (далее расскажу почему), и нашли отличное решение, на текущий момент, в лице FastStream. Сразу оставлю такую пометку, что каждый инструмент подходит для решения своей задачи. Мы больше хотели сделать акцент на удобство и скорость разработки относительно затрачиваемого времени на миграции решений. N.B. : Код возможно покажется неоптимальным или старым. Это всё наш дорогой Легаси.

    habr.com/ru/articles/1030082/

    #celery #rabbitmq #faststream #aiopika #python3

  5. Как я реализовал Blue-Green деплой с нулевым даунтаймом на Docker Compose

    Недавно я внедрил blue‑green деплой в проде. Реализация довольно простая и кастомная, но справляется со своей задачей на ура! Также сообщу, что используется обычный докер композ на виртуалке — возможно, кому‑то такой подход будет полезен. Для фоновых процессов (воркеров) В приложение добавляется специальный инфрастуктурный singleton класс с флагом is_accepting, и обертка на consumers. В каждом консьюмере перед обработкой проверяем этот флаг: если True — обрабатываем задачу, если False — переносим задачу на повторную обработку (например, в rabbitmq делаем сразу nack(requeue=true))

    habr.com/ru/articles/1025776/

    #bluegreen_deployment #zero_downtime #dockercompose #cicd #rabbitmq #kafka #faststream #celery

  6. Практическое тестирование приложений

    Всем привет! Эта статья — продолжение материала про универсальный прототип бэкенд-приложений. В ней я поделюсь практическим опытом написания тестов и покажу, как выбранная архитектура упрощает этот процесс. Ну что ж, приступим

    habr.com/ru/articles/958014/

    #python #faststream #dishka #litestar #fastapi #sqlalchemy #pydantic #asgi #pytest

  7. Практическое тестирование приложений

    Всем привет! Эта статья — продолжение материала про универсальный прототип бэкенд-приложений. В ней я поделюсь практическим опытом написания тестов и покажу, как выбранная архитектура упрощает этот процесс. Ну что ж, приступим

    habr.com/ru/articles/958014/

    #python #faststream #dishka #litestar #fastapi #sqlalchemy #pydantic #asgi #pytest

  8. Практическое тестирование приложений

    Всем привет! Эта статья — продолжение материала про универсальный прототип бэкенд-приложений. В ней я поделюсь практическим опытом написания тестов и покажу, как выбранная архитектура упрощает этот процесс. Ну что ж, приступим

    habr.com/ru/articles/958014/

    #python #faststream #dishka #litestar #fastapi #sqlalchemy #pydantic #asgi #pytest

  9. Практическое тестирование приложений

    Всем привет! Эта статья — продолжение материала про универсальный прототип бэкенд-приложений. В ней я поделюсь практическим опытом написания тестов и покажу, как выбранная архитектура упрощает этот процесс. Ну что ж, приступим

    habr.com/ru/articles/958014/

    #python #faststream #dishka #litestar #fastapi #sqlalchemy #pydantic #asgi #pytest

  10. Телеграм-бот для бронирования столов на вебхуках: FastAPI, Aiogram Dialog, FastStream и RabbitMQ в единой экосистеме

    В этой статье мы создадим функционального Telegram-бота для бронирования столиков в ресторане «Binary Bites» с использованием современных Python-инструментов. Бот будет работать через вебхуки, взаимодействовать с брокером сообщений RabbitMQ и поддерживать фоновое выполнение задач с помощью FastStream и APScheduler. Проект объединит FastAPI, SQLAlchemy, Alembic, Uvicorn и другие библиотеки, обеспечивая гибкость и масштабируемость. Готовый бот позволит пользователям бронировать столики, просматривать и отменять брони, а администраторам — управлять заказами.

    habr.com/ru/companies/amvera/a

    #fastapi #rabbitmq #брокер_сообщений #aiogrram #aiogram_dialog #faststream #телеграм_бот #telegram_bot #telegram_bots #sqlalchemy_20

  11. Пишем универсальный прототип бэкенд-приложения: Litestar, FastStream, dishka

    Привет, Хабр! Меня зовут Сергей, я техлид в команде PT BlackBox. Мы с коллегами разрабатываем продукт, который позволяет обнаруживать уязвимости в приложениях методом черного ящика. Фактически мы сами и пишем веб-приложения, и именно о них пойдет речь в статье. Я бы хотел с вами поделиться своими наработками по теме бэкенд-приложений и предоставить вам шаблон-прототип, который, как мне кажется, может закрыть подавляющее большинство потребностей при их разработке. Для написания прототипа я буду использовать Litestar , FastStream и dishka . Эта статья будет особенно полезна тем, кто пишет на Tornado, Django, Flask или AIOHTTP и хочет перейти на более актуальные технологии для дальнейшего развития своих проектов на современных рельсах. Ну что ж, приступим

    habr.com/ru/companies/pt/artic

    #python #Litestar #прототип #web #faststream #asgi #sqlalchemy #alembic #pydantic #dishka

  12. Пишем универсальный прототип бэкенд-приложения: Litestar, FastStream, dishka

    Привет, Хабр! Меня зовут Сергей, я техлид в команде PT BlackBox. Мы с коллегами разрабатываем продукт, который позволяет обнаруживать уязвимости в приложениях методом черного ящика. Фактически мы сами и пишем веб-приложения, и именно о них пойдет речь в статье. Я бы хотел с вами поделиться своими наработками по теме бэкенд-приложений и предоставить вам шаблон-прототип, который, как мне кажется, может закрыть подавляющее большинство потребностей при их разработке. Для написания прототипа я буду использовать Litestar , FastStream и dishka . Эта статья будет особенно полезна тем, кто пишет на Tornado, Django, Flask или AIOHTTP и хочет перейти на более актуальные технологии для дальнейшего развития своих проектов на современных рельсах. Ну что ж, приступим

    habr.com/ru/companies/pt/artic

    #python #Litestar #прототип #web #faststream #asgi #sqlalchemy #alembic #pydantic #dishka

  13. Пишем универсальный прототип бэкенд-приложения: Litestar, FastStream, dishka

    Привет, Хабр! Меня зовут Сергей, я техлид в команде PT BlackBox. Мы с коллегами разрабатываем продукт, который позволяет обнаруживать уязвимости в приложениях методом черного ящика. Фактически мы сами и пишем веб-приложения, и именно о них пойдет речь в статье. Я бы хотел с вами поделиться своими наработками по теме бэкенд-приложений и предоставить вам шаблон-прототип, который, как мне кажется, может закрыть подавляющее большинство потребностей при их разработке. Для написания прототипа я буду использовать Litestar , FastStream и dishka . Эта статья будет особенно полезна тем, кто пишет на Tornado, Django, Flask или AIOHTTP и хочет перейти на более актуальные технологии для дальнейшего развития своих проектов на современных рельсах. Ну что ж, приступим

    habr.com/ru/companies/pt/artic

    #python #Litestar #прототип #web #faststream #asgi #sqlalchemy #alembic #pydantic #dishka

  14. Фоновые асинхронные задачи в FastAPI и их мониторинг

    Привет! Меня зовут Иван, я бэкенд-разработчик в KTS. Сегодня расскажу, как в FastAPI эффективно работать с фоновыми задачами и настроить их мониторинг в Prometheus. В туториалах для фоновых задач в FastAPI обычно предлагают celery и при этом используют синхронный код. Но сегодня в реальной практике такое встречается редко, поэтому в этой статье я покажу, как в фоновых задачах использовать асинхронный код. В статье опишу 5 вариантов: встроенный в FastAPI Background Tasks и 4 библиотеки — ARQ, SAQ, FastStream, адаптированный к асинхронному коду Celery. В конце расскажу, как мониторить фоновые задачи. Оглавление

    habr.com/ru/companies/kts/arti

    #fastapi #faststream #celery #locust #prometheus #arq #saq #grafana