Как разместить бота Telegram на хостинг: какой сервер выбрать для Телеграма

Как разместить бота Telegram на хостинг: какой сервер выбрать для Телеграма Хостинг

Что вообще такое эта виртуальная машина?

Виртуальная машина (ВМ ) — это виртуальный компьютер, который использует выделенные ресурсы реального компьютера (процессор, диск, адаптер). Эти ресурсы хранятся в облаке и позволяют ВМ работать автономно. Простыми словами, виртуальная машина позволяет создать на одном компьютере ещё один компьютер, который будет использовать его ресурсы, но работать изолированно.

Именно виртуальная машина поможет нашему боту отвечать на все запросы и работать 24 на 7.

Вступление


Как только на территории РФ вступил в силу запрет на анонимность в мессенджерах, у меня дошли руки написать пост про

. По ходу создания бота столкнулся с большим количеством проблем, которые пришлось решать по отдельности, и буквально выцеживать крупинки информации со всего интернета. И вот после нескольких месяцев страданий и мучений (кодинг – не основное моё занятие) я наконец-то закончил с ботом, разобрался со всеми проблемами и готов поведать свою историю Вам.

Создан, чтобы помогать

Для чего же нужен текстовый собеседник? Говоря формальным языком, он должен выявить вашу потребность или проблему и удовлетворить / решить её. Чаще всего в чат-ботах нуждаются компании, когда техподдержка начинает страдать от наплыва однотипных запросов.

Если вы уже нацелились на разработку своего чат-бота, то нужно определиться, будет ли он простейшим или продвинутым. Следующий этап будет состоять из сбора данных, их обработки и структурирования, создания программы по автоматическому поиску ответов (для простейшего варианта) или обучения нейросети (для продвинутого варианта).

Сюда же входит разработка интерфейса собственного чата, но этот шаг можно пропустить, если вы используете готовые виджеты или мессенджеры. К тому же, необходимо обеспечить круглосуточную доступность и отказоустойчивость — в этом вам поможет удалённый сервер или хостинг.

После всех локальных подготовок и тестов можно приступить к выбору хостинга для чат-бота.

Colocation

Колокейшн представляет собой хостинг, за который нужно платить провайдеру не только за аренду, но и за обслуживание server. Кроме того, есть услуга защиты данных, но она тоже платная.

Благодарности


Это был мой первый относительно большой проект и я столкнулся с колоссальным количеством новых для меня проблем. Огромную благодарность хочу выразить

Yurii Drake

, который помог мне разобраться с ними!

Быстрое погружение в матчасть

Большинство из вас сталкивается с чат-ботами почти каждый день. Это и автоматические ответы сообществ в социальных сетях, и боты в мессенджерах, и онлайн-консультанты на сайтах, которых все ненавидят, а также мобильные приложения и множество других разновидностей.

Чтобы в дальнейшем избежать путаницы, разделим чат-ботов на два царства:

  1. Простейшие — те, что работают на простых скриптах: ищут готовые ответы по ключевым словам или контексту и не обучаются.
  2. Продвинутые — разработаны с помощью машинного обучения: умеют анализировать вопросы и генерировать уникальные ответы.

Кстати, один из первых текстовых помощников появился ещё в 1966 году — это была программа Элиза, которая пародировала диалог с психотерапевтом, реагируя на ключевые слова. Её можно отнести к простейшим чат-ботам.

Виртуальный сервер

Также деление server на несколько частей для сдачи в аренду, но эти части будут независимы друг от друга, следовательно, ограничения не предусмотрены.

Это удобно тем, что можно настроить именно под свой проект или даже установить отдельное ПО. Подойдет для более крупных проектов. Цена аренды такого ресурса от 17$.

Выбор хостинга

Первое, на что стоит обратить внимание — для аудитории какой страны вы планируете внедрять своего ассистента. Например, боту в сообществе ВКонтакте, важно выбрать хостинг с серверами в стране, где ВКонтакте не запрещён — обычно выбор падает на Россию. Для Telegram-бота тоже можно рассматривать российских провайдеров, поскольку с мессенджера официально сняли блокировку.

Также если вы хотите собирать и анализировать данные ваших пользователей, то стоит заранее позаботиться о соблюдении законов о локализации персональных данных. Например, для работы с клиентами из России необходимо выбрать хостинг-провайдера, серверы которого физически находятся на территории РФ.

С юридическими тонкостями разобрались, теперь перейдём к определению характеристик хостинга. Для этого вернёмся к нашим двум царствам чат-ботов.

Выделенный сервер

Как правильно выбрать хостинг для бота в Телеграм
Выделенный сервер.

Это хост – целый server. Плюс: нет зависимости от остальных клиентов провайдера. Вы как единственный админ получаете доступ к ПО, то есть осуществляете полный контроль систем.

Выделенный сервер – отличный вариант для игр, соцсетей и крупных проектов. Но и стоимость аренды такого хостинга от 50$.

Где запустить вашего бота?

Свой собственный ПК не хочется оставлять включенным 24/7, да и не практично это. Поэтому я решил воспользоваться бесплатным сервисом heroku, но меня постигла неудача из-за выбранной мною БД. Оказалось, что при каждом перезапуске бота, heroku удаляет все коммиты sqlite3 за последний сеанс без исключений. После чего, я решил купить

(Virtual Dedicated Server, виртуальный выделенный сервер) – удаленный ПК, на котором выделяется определенная мощность и память под Вас, и к командной строке которого Вам даётся доступ. Чаще всего операционной системой такой машинки будет linux. Плата небольшая – 400 руб./месяц, так что без особых моральных страданий оплатил VDS на основе

и начал разбираться с тем, как мне включить бота на удалённом сервере.

Зачем нужны боты

Как выбрать хостинг для бота в Телеграм
Боты в Телеграм.

Ботов создали для выполнения монотонных, скучных действий, которые подражают деятельности настоящего пользователя, но с большей скоростью и правильностью.

Они нашли применение во множестве областей: интернет-рекламе, в играх, интернет-торгах, мессенджерах и прочее.

Как выбрать виртуальную машину?

ВМ выбирается исключительно отталкиваясь от ваших потребностей бюджета. Чем больше вам необходимо мощности и памяти, тем выше будет ее стоимость. В настоящее время есть множество хороших сервисов, предоставляющих пробный период с которым вы сможете определиться, подходит ли вам сервис.

Лично я могу рекомендовать следующие сервисы:

После выбора сервиса, пройдем регистрацию и создадим новую виртуальную машину.

Как выбрать хостинг для приложения

Перед тем как разместить бота Telegram на какой-нибудь хостинг, для начала надо этот хостинг выбрать.

Для этого нужно учесть 4 нюанса:

  • функции и инструменты;
  • дисковое пространство;
  • цена и качество обслуживания;
  • уровень техподдержки.

По первому критерию нужно обратить внимание на такие способности хоста:

  • трафик;
  • поддержка CMS, скриптов, баз данных, технологий;
  • удобство управления;
  • доступ к сайту для копирования, удаления либо редактирования файлов на сервере;
  • возможность наблюдать за состоянием server;
  • доступ к нескольким почтовым аккаунтам;
  • защита от вирусов, спама и рекламы;
  • бесплатный пробный период или возможность вернуть средства.

При выборе объема пространства для приложения достаточно будет 100 МБ.

Обычно добросовестные провайдеры должны предоставить клиентам информацию о компании, бесплатно перемещать сайт с другого хостинга, копию лицензии, контакты личного дата-центра. Значение имеет и срок работы компании.

На счет службы поддержки, то ее работа должна быть беспрерывной.

Как же подключаться к vds?


Есть разные методы, я решил по SSH-соединению через Putty. Скачиваем Putty через

и открываем. Вводим IP-address VDS и нажимаем open.

Какой язык программирования выбрать для написания бота?

Тут я долго не заморачивался и остановился на Python, так как знаю его достаточно хорошо, да и удобная библиотека тоже присутствует. Я решил использовать

Кому нужны чат-боты?

Рынок чат-ботов в России растет с бешеной скоростью и ожидается ежегодный прирост на 30% в течение ближайших трех лет. В 2020 г. количество запросов на чат-боты увеличилось на 17% по сравнению с 2022 г. Большим спросом стали поль­зо­вать­ся голосовые боты, количество запросов на них выросло в четыре раза. В 2021 г. ожидается рост числа запросов на чат-боты на 15-20% от ор­га­низа­ций из госсектора, об­ра­зова­ния, медицины, ло­гис­ти­ки, ре­тей­ла и e-commerce, промышленных и добывающих компаний.

Настройка сети.

Для подключения будем использовать протокол SSH. Для подключения к нашей виртуальной машине, нам необходимо будет выпустить новую связку ssh-ключей.

Для этого перейдем в терминал и пропишем следующую команду:

$ ssh-keygen

Затем пропишем имя нашего ключа и нажмем Enter. Наш ключ создан. Для подключения нам понадобится public-key с расширением .pub. Копируем содержимое нашего файла и вставляем его в соответствующее поле «Ключ виртуальной машины».

Переходим к следующему шагу.

Облачный сервер (cloud-hosting)

При таком типе хоста оплата производится за объем ресурсов. Провайдер сам распределит их между серверами. Подходит в случае, когда сайт занимает несколько разных server. Плюс в том, что можно использовать ресурсы нескольких серверов. Цена – от 7$.

Общий виртуальный

Один из популярнейших. Подходит для небольших онлайн-магазинов, сайтов. Виртуальный хостинг – результат деления одного сервера на несколько частей для сдачи в аренду. Из минусов виртуального типа: наличие ограничений скорости записи или на использование ОП.

На сегодня наиболее известный тип host. Цена – от 2 до 15$ в месяц.

Первые шаги

Для начала нужно установить

Подключение к виртуальной машине

Для подключения к нашей виртуальной машине пропишем следующую команду:

ssh -i ~/.ssh/ИмяВашегоКлюча ubuntu@ваш публичный IP-адрес

Например: ssh -i ~/.ssh/my_key ubuntu@22.222.222.222

В случае удачного подключения вы увидите нечто подобное:

Мы подошли к самому сложному шагу, который я надеюсь, благодаря моей статье перестанет быть столь трудным для освоения.

Продвинутый хостинг для продвинутого чат-бота

Если ваш виртуальный ассистент — это целая нейросеть или даже комбинация нейросетей, то, возможно, ещё на этапе её создания вам понадобится не просто хостинг, а сервер с графическими ускорителями, чтобы оперативно её реализовать. Обучение нейросетей на GPU происходит гораздо быстрее.

Ну а главный секрет — на самом деле для готового продвинутого чат-бота можно выбрать точно такой же хостинг, как и для простейшего. Чаще всего уже обученные нейросети работают довольно быстро и занимают не так много места.

Но всё-таки стоит предусмотреть дополнительное пространство на диске, если вы планируете обрабатывать поступающие запросы и делать вашего ассистента лучше.

Например, ваш бот написан на Python с использованием фреймворка Flask или Django. Shared-хостинг по умолчанию не позволит установить нужное для вас ПО (на VPS это возможно). Но, например, на shared-хостинге shhost.ru есть поддержка Python 2.6–3.7 и Perl 5.10 , а также поддержка фреймворков для Python — Django 2 и Flask.

Важный нюанс 2

Для shared-хостинга вам потребуется домен, чтобы отправлять запросы к нему. Для VPS же домен не обязателен, и вы можете обращаться к нему по выделенному IP-адресу.

Если вы планируете быстро развивать и расширять вашего бота, то лучше сразу присмотреться к варианту VPS: на нём можно поставить практически всё, что угодно, и в любой момент при необходимости повысить тариф.

Простейший хостинг для простейшего чат-бота

Какой хостинг выбрать для чат-бота из царства Простейших? Если бот небольшой и обрабатывает не так много запросов, для него подойдут самые дешёвые тарифы. Можно даже воспользоваться бесплатными серверами мессенджеров. Но учтите, что если к вам хлынут клиенты, и вы станете слишком часто отправлять запросы о появлении новых сообщений, вашего чат-бота могут забанить. Поэтому для масштабного использования и развития ассистента хостинг — необходимая вещь.

На первых порах можно попробовать бесплатный хостинг для бота — это вполне неплохой вариант для тестирования. Но важно учесть, что подобные услуги имеют ограниченные настройки и подходят для совсем простых ботов. И при росте числа пользователей, скорее всего, придётся перейти на более мощные ресурсы.

Для комфортной инфраструктуры и возможности расширения вашего алгоритма стоит рассмотреть хостинг с наличием СУБД, веб-сервера, SSL-сертификата и, конечно же, технической поддержки. 

При этом даже если ваша программа просто делает запросы в базу данных и собирает информацию о запросах, стоит также предусмотреть, что база со временем будет расти. Поэтому выбирайте хостинг-провайдера, у которого можно легко проапгрейдить тариф в случае необходимости. Отличный вариант — облачные серверы.

Разница между хостингом и доменными именами

Отличие домена состоит в том, что он предоставляет абсолютное право собственности на имя сайта. К домену никто не имеет доступа, кроме его владельца.

Наличие домена не предполагает того, что сайт рабочий. Чтобы его запустить, все равно потребуется сервер. А хостинг – это уже настроенный server с подключением к Сети и с обслуживанием.

Создание виртуальной машины.

Я выбрал минимальные параметры, так как нашему боты не нужны какие-то большие энергоресурсы.

Шаг 5. настройка беспрерывной работы нашего бота.

Пропишем следующую команду: nano /lib/systemd/system/НазваниеБота.service

Выводы

Для опытных юзеров создать и разместить бота на сервере будет несложно. Трудности составят лишь выбор самого хостинга. Но поскольку их существует много, то ориентируясь по общепринятым критериям, можно подобрать подходящий именно под ваши запросы хостинг.

Оцените статью
Хостинги