В статье мы рассмотрим 12 необычных сервисов для хостинга серверов. Большинство рейтингов хостингов предлагают примерно одинаковый набор известных VPS-провайдеров. В этой статье мы рассмотрим специализированные решения для развертывания фронтенда, бэкенда на разных языках и геораспределенных решений. И посмотрим, какие из данных хостингов бесплатные, какие дорогие, а какие лучше подходят для развертывания сайтов. Приступим.
Хостинг для Frontend
Vercel. Если вы слышали о технологии Next.js, то Vercel - это компания, которая ее разработала. Сам сервис предназначен для хостинга front end. И содержит очень много полезного функционала для командной работы, правок и много другого. При этом обладает бесплатным тарифным планом. Единственное, Vercel лучше рассматривать именно как инструмент командной работы над фронтом, в этом его основное преимущество. И за функционал командной работы уже нужно платить от 20$ за каждого члена команды в месяц.
Хостинг для Fullstack-проектов
Рассмотрим несколько вариантов, когда у вас в проекте есть и фронт, и бэкенд, и база данных, что характерно для вебсайтов.
Для простого развёртывания и обновления проектов
Amvera - российский сервис. Проекты можно обновлять через git push. Есть стартовый баланс на тесты на первые недели использования. Это одно из самых доступных облаков со встроенным CI/CD через Git Push. Можно разворачивать как приложения на Python, С#, Node.JS, Java, PHP, Go, Ruby, так и кластеры СУБД. Доступно встроенное бесплатное проксирование до API OpenAI. Если вы не владеете Git, деплой можно провести через загрузку файлов проекта в интерфейсе. Это один из немногих вариантов, доступных, если у вас нет иностранной банковской карты. Цены за аналогичные тарифы дешевле Heroku в 2-5 раз при схожем функционале.
Heroku - компания, известная тем, что она впервые сформулировала концепцию 12 принципов разработки приложений и первой внедрила механику обновлений через git push. Основное преимущество - максимально простой способ обновления кода проектов. Вы делаете коммит в Git, ваши изменения автоматически применяются и в прод выкатывается новая версия вашего проекта. Вам не нужно настраивать сервер и администрировать его - вы просто пишете код и заливаете его через git на сервер. Но за удобство приходится платить. Минимальный тариф начинается от 5 $, а если вы хотите развернуть что-то для прода, лучше использовать тариф уже за 25$ и выше. Но есть и более доступные варианты.
Clever Cloud - альтернатива Heroku. Проект поддерживает некоторые редкие языки и очереди сообщений. И оплата идет в Евро.
Render - есть бесплатный тарифный план. Но, как часто бывает, - есть нюанс. На нем базы данных живут до 90 дней, а потом “обнуляются”. И еще печальнее "холодный старт", когда у вас сервис был неактивен некоторое время - запуск длится около минуты. Т.е. если к вам приходит клиент, ему придется подождать минуту, пока ваш сайт запустится. Но всегда можно перейти на платный тариф от 19$ в месяц.
RailWay - сервис позиционирует себя как более дешевый аналог Heroku. Но более дешевый - это процентов на 20-25, не более. Есть бесплатные часы, но их не хватает для беспрерывной работы.
Более подробную информацию можно найти на сайтах хостинга серверов по ссылкам выше.
Как перенести сайт на один из данных хостингов
Вы привязываете свой репозиторий к облачному провайдеру
Обычно это делается примерно так: git remote add имя провайдера и ссылка на репозиторий
Загружаем код сайта (или другого проекта) на хостинг
Делаете коммит через терминал командами
git add .
git commit -m "Описание сделанных изменений"
git push [тут обычно имя провайдера] master
И, в идеальной картине мира, на этом будет завершен перенос сайта на хостинг.
Разумеется, иногда нужно задать конфигурацию и соблюсти некоторые условия, зависящие от провайдера, чтобы разместить сайт на хостинге. Но разобравшись один раз, вы сможете обновлять проект простым коммитом в Git-репозиторий.
Специализированные под язык/технологию сервисы
PythonAnywhere - если ваш сайт на python, вы можете воспользоваться данным сервисом. Есть очень ограниченный бесплатный тарифный план, но он не поддерживает некоторые окружения. Это делает невозможным развертывание ряда проектов, и нужно быть готовым к постоянным остановкам проекта. Платные планы начинаются от 5$ в месяц. Сервис предназначен для размещения именно сайтов, написанных на Python.
Amvera, Heroku и подобные сервисы - на самом деле, все сервисы из пункта выше нативно поддерживают большинство языков программирования. Вам нужно просто загрузить код и, если нужно, задать конфигурацию. Данные сервисы все настроят и запустят самостоятельно.
Для геораспределенных сервисов
Fly.io - если у вас пользователи из разных стран и континентов, полезно развернуть ваши сервисы поближе к ним. И если для статического контента есть проверенные CDN, то подобная операция для базы данных может быть максимально нетривиальной. Fly.io подойдет, если у вас высоконагруженный сервис, который нужно развернуть в нескольких регионах. Оплата идет по мере использования ресурсов, но с весьма сложным ценообразованием. Для работы потребуется иностранная карта.
Serverless - запускаем сайт как функцию
Если ваш сервис представляет собой что-то вроде API, который должен работать, только когда на него приходят запросы, вы можете попробовать реализовать код как функцию и развернуть его у одного из облачных провайдеров, предоставляющих serverless. Название обманчиво - сервера, конечно, там есть, но вы от них абстрагированы, и ваш код работает просто как функция, для которой на время работы поднимается контейнер. Из преимуществ serverless - возможность бесплатной работы сервиса. Правда, это распространяется только на проекты с невысокой нагрузкой. Если ваш проект представляет собой высоконагруженное приложение - Serverless может быть весьма дорогим решением.
Вот провайдеры, которые предоставляют данные услуги - DigitalOcean, Яндекс облако, AWS, Azure, GCP.
Какой хостинг купить для сайта?
Мы рассмотрели разные варианты хостинга сайта. Что подходит лично вам, зависит от конкретного проекта. У многих сервисов есть бесплатные тарифные планы, но как правило их не хватает для полноценного развертывания 24/7 без остановок. Некоторые провайдеры требуют обязательное наличие иностранной карты. Но всегда можно воспользоваться отечественными альтернативами, такими как Яндекс Облако или Amvera. И, конечно, если ни один из вариантов вас не устроил, вы можете воспользоваться обычным VPS. Рейтингов со сравнением VPS достаточно много, как пример 1 и пример 2.