Где может работать бот
- VPS (виртуальный сервер). Основной вариант: вы получаете полноценную машину, где бот работает постоянно. Подходит для большинства проектов.
- Обычный виртуальный хостинг. Обычно не подходит: нельзя держать постоянный процесс.
- Облачные платформы и контейнеры. Подходят, если вы готовы настраивать и платить по потреблению.
- Ваш компьютер. Только для тестов: пропадёт интернет или питание, и бот замолчит.
Что выбирать по расположению сервера
Здесь есть неочевидная вещь. Сервер в России удобен по оплате, законам и скорости для российских пользователей. Но Telegram API периодически бывает нестабильно доступен с российских площадок: соединения обрываются, запросы зависают. В моей практике это была одна из самых частых причин «молчащих» ботов.
Варианты решения:
- выбрать площадку, с которой соединение с Telegram стабильно, и проверять это до запуска;
- использовать промежуточный узел (прокси или релей) за пределами проблемного маршрута;
- сделать бот устойчивым к обрывам: таймауты, повторы, перезапуск при зависании.
Что должно быть настроено на сервере
- Автозапуск. Бот стартует после перезагрузки сервера (например, через systemd).
- Автоперезапуск при сбоях. Если процесс упал, он поднимается сам.
- Защита от зависаний. Иногда процесс живёт, но ничего не делает: сокет завис. Помогает независимый «сторожевой» механизм, который перезапускает бота, если он давно не подавал признаков жизни.
- Логи с ротацией. Чтобы можно было разобрать сбой и чтобы журнал не заполнил диск.
- Резервные копии базы. Регулярные и проверенные.
- Обновления и безопасность. Доступ по ключам, ограничение открытых портов, актуальные пакеты.
Мониторинг: как узнать, что бот сломался, раньше клиентов
- Проверка «жив ли процесс» и «отвечает ли бот» (например, запрос к API Telegram от имени бота).
- Уведомление в Telegram или на почту при ошибках и падениях.
- Сводка по ошибкам за день.
- Отслеживание того, что фоновые задачи (рассылки, выгрузки, публикации) выполняются по расписанию.
Для собственных проектов я использую отдельный сервис, который следит за всей бот-инфраструктурой на сервере: ошибки в логах, недоступность, сводки на почту.
Что ломается чаще всего
- Оборванное соединение с Telegram без ошибки в логе: бот выглядит живым, но не получает сообщения.
- Кончились деньги на внешнем сервисе: нейросеть, SMS, платёжный провайдер. Бот работает, но его функции молча отказывают.
- Заполнился диск логами или базой.
- Изменение внешнего API: маркетплейс, CRM, платёжка поменяли формат.
- Слишком длинные сообщения и другие ограничения Telegram, которые не учли в тексте бота.
Кто отвечает за поддержку
Договоритесь заранее: кто следит за работоспособностью, кто платит за сервер и сторонние сервисы, как быстро исправляются ошибки и как сообщать о них. Общий подход к составу работ описан в статье «Как заказать Telegram-бота».
Частые вопросы
Сколько стоит сервер для бота?
Для большинства ботов хватает небольшого VPS. Точная сумма зависит от площадки и нагрузки, актуальные цены смотрите в тарифах провайдера.
Можно ли перенести бота на другой сервер?
Да, если бот написан аккуратно. Переносятся код, база данных и настройки, токен остаётся тем же.
Что делать, если бот перестал отвечать?
Проверьте, запущен ли процесс, есть ли ошибки в логе, доступен ли Telegram с сервера. Если не получается, напишите мне.