Как запустить бота на сервере
Хостинг
Боту нужен сервер со стабильным питанием и интернетом. Программы для ботов обычно многого не требуют, так что минимального тарифа хостинга будет достаточно.
Бесплатный хостинг
Если вы пока не готовы платить за хостинг, попробуйте такие варианты:
- PythonAnywhere (может работать нестабильно)
- Yandex Cloud Functions (serverless)
Long polling или вебхуки
Если вы используете Bot API, вы можете получать апдейты либо через long polling, либо через вебхуки.
При long polling ваша программа регулярно спрашивает у серверов Telegram, не появились ли новые апдейты. При вебхуках Telegram сам отправляет HTTP-запросы вашей программе, когда приходят обновления.
Вебхуки быстрее и экономнее по ресурсам: бот реагирует сразу, а не ждёт следующего цикла опроса. Для продакшена это обычно лучший вариант, особенно если у вас много сообщений или важна скорость ответа.
Чтобы настроить вебхуки, вам понадобится веб-приложение, способное принимать HTTP-запросы. Для aiogram есть встроенные фичи, которые работают с aiohttp и другими асинхронными веб-фреймворками. Серверу с вебхуком также понадобится HTTPS/SSL-сертификат.
См. руководство по вебхукам в aiogram
