Docker и изоляция
Бот, база и веб-часть — отдельными контейнерами. Одинаково запускается на любом сервере, переезд перестаёт быть приключением.
Docker, PostgreSQL, бэкапы по расписанию, автоперезапуск при сбое, уведомление вам, если что-то легло. Работает одинаково для бота, сайта или внутреннего сервиса: проект перестаёт быть скриптом на чьём-то ноутбуке и становится тем, что держится само.
Написать в TelegramЦену и срок называю до старта и фиксирую письменно. Обсуждение бесплатное.
Неважно, бот это, сайт или служебный скрипт. Если узнали хотя бы три пункта — это к вам. По отдельности каждый терпим, вместе они однажды складываются в потерянный день и злых клиентов.
Перенос существующего бота на нормальное окружение. Код при этом не переписывается — меняется то, где и как он живёт.
Бот, база и веб-часть — отдельными контейнерами. Одинаково запускается на любом сервере, переезд перестаёт быть приключением.
Из файлов или SQLite — в настоящую базу, с сохранением всего, что накопилось. Миграции, чтобы схему можно было менять без ручной правки.
Автоматические копии базы с ротацией. И обязательно проверка восстановлением: бэкап, который ни разу не разворачивали, бэкапом не считается.
Упал — поднялся сам за секунды. Сервер перезагрузился — бот стартовал вместе с ним. Без вашего участия и без ночных звонков.
Бот лёг, база не отвечает, диск заканчивается — вам приходит сообщение в Telegram. Узнаёте раньше клиентов.
Токены и пароли переезжают в конфигурацию, которой нет в репозитории. Случайно выложить их в открытый доступ станет нечем.
Переключение делаю в согласованное время, обычно ночью. Старое окружение не трогаю, пока новое не отработает сутки — если что-то пойдёт не так, возвращаемся назад за минуту.
Пока пользователей десяток, всё хорошо. Когда их тысяча и бот пишет из нескольких мест сразу, файл блокируется и запросы начинают отваливаться. Проявляется ровно тогда, когда проект пошёл в рост.
Самый частый случай: скрипт настроен, но однажды сломался и молча перестал работать. Копии не складываются месяцами, и никто не замечает — до первого падения диска.
Без ротации лог растёт, пока не кончится место. Дальше не пишется ничего: ни база, ни бэкапы. Бот умирает по причине, которую потом полдня ищут.
Соседи по машине съедают память, бота убивает система. Он даже не виноват. Лечится лимитами и разнесением, а не увеличением тарифа.
На минуты, в момент переключения. Всё готовится параллельно на новом окружении, переключаем в удобное вам время. Старое остаётся нетронутым сутки как страховка.
Подскажу конфигурацию под вашу нагрузку и помогу оформить. Обычному боту с базой хватает самого дешёвого VPS, переплачивать незачем. Сервер оформляется на вас, доступы остаются у вас.
Нет. Перед переносом снимаю копию, после переноса сверяю количество записей и суммы со старой базой. Пока сверка не сошлась, старое окружение не выключаем.
Разницы почти нет. Контейнеры, база, бэкапы, автоперезапуск и мониторинг нужны любому проекту, который должен работать без человека. У сайта добавляется сертификат с автопродлением, у бота — вебхуки. И то и другое входит. Если код писали не вы и он странный — это тоже не мешает: перенос меняет окружение, а не логику.
Вам. Сервер ваш, доступы ваши, конфигурация и скрипты отдаются целиком. Никакой привязки ко мне не остаётся.
Две недели поддержки входят в цену: правлю ошибки, отвечаю на вопросы по серверу. Дальше можно продлить помесячно или разойтись.
Только сервер — у большинства это несколько сотен рублей в месяц. Ничего дополнительно покупать не нужно: всё, что я ставлю, бесплатное и открытое.
YooKassa, CryptoBot, Telegram Stars. Вебхуки с проверкой подписи, автопродление.
Закрытые каналы, клубы, курсы. Оплата, автодоступ, автокик при неоплате.
Смотрю, что есть, и называю цену за конкретный список работ.
Какой сервер, есть ли база, делаются ли копии. Посмотрю и скажу, что нужно поменять и сколько это стоит.
Написать в Telegram