Backend & ИИ

Что такое aiohttp

Что это

Библиотека Python для сетевых запросов без ожидания: бот ходит в чужие API и в это же время отвечает людям. Умеет быть и клиентом, и небольшим веб-сервером.

Как используем

Через неё бот продажи подписок обращается к API панели Marzban, бот сообщества «Дыхание Поволжья» читает каталог с сайта, а сервис открыток UNLOCK отдаёт настройки открыток и принимает ответы получателей.

Где это нужно бизнесу

  • Боту нужно ходить в чужие API — панель, сайт, сервис — и не тормозить при этом с ответами людям.
  • Небольшому сервису нужен свой веб-сервер без тяжёлого фреймворка.

Как мы это используем

  • API сервиса открыток. В UNLOCK на aiohttp работает API, которое отдаёт настройки открыток и принимает выбор получателя.
  • Бот сообщества ВКонтакте. Бот «Дыхания Поволжья» на aiohttp работает через Long Poll и читает каталог с сайта.
  • Связь с панелью. Бот продажи подписок обращается к API Marzban, а в режиме webhook aiohttp служит встроенным веб-сервером.
  • Внутренний API. Бот входа в «Переговорку» ходит во внутренний API сервиса через aiohttp.
  • Клиенты метаданных. В ToshaMusic — запросы к API Qobuz, Deezer и Tidal и HTTP-сервер headless-режима.

Типичные проблемы

  • Сервис по ту сторону не отвечает. Нужны таймауты и понятное сообщение пользователю. Бот входа, если туннель упал, честно отвечает, что сервис чата не отвечает.
  • Повторы с растущей паузой. В Tech Poly VPN запросы к базе, Marzban, Telegram и ВКонтакте повторяются с нарастающей задержкой, а не долбят сервис подряд.

Когда это не нужно

Для сайта с моделями, валидацией и документацией API удобнее FastAPI. aiohttp хорош там, где нужен лёгкий клиент или маленький сервер.

← Все термины

Нужен сайт, бот или автоматизация?

Термины объяснили — теперь давайте к делу: расскажите о задаче, а мы переведём её на понятный план работ.