Какой хостинг выбрать? Этим вопросом рано или поздно задается любой стартап. Ответ в каждом случае придется искать самостоятельно — оценивать плюсы-минусы, прикидывать риски и считать бюджет. Максимально упростить этот процесс и систематизировать виды хостингов и их особенности нам помог выпускник ФРИИ и основатель проекта AdminDivision.ru Егор Андреев, который помогает стартапам Акселератора ФРИИ масштабировать свою IT-инфраструктуру.

Описание задачи всегда начинается одинаково: есть написанный код сайта, его нужно разместить на каком-то хостинге, чтобы клиенты получили доступ. Классический «дедовский» вариант — купить сервер, настроить его и разместить на нем сайт — плох уже тем, что за корректной работой «железа», операционной системы и софта придется следить самостоятельно. У основателей нового проекта на это нет ни времени, ни ресурсов. Поэтому стартапы активно пытаются использовать другие виды хостинга, чтобы сэкономить время и деньги, особенно на старте проекта. И здесь начинается самое интересное: поскольку все предложения разные, они отличаются по цене, объему услуг, степени ответственности хостинг-провайдера и другим параметрам. Как разобраться? Для начала принять общее правило: чем больше работ возьмет на себя провайдер, тем меньше головной боли достанется стартапу. Но нужно учитывать, что в дополнение стартап получает более высокий прайс и отсутствие возможности настраивать систему самостоятельно. Далее следуют нюансы, специфические для каждого вида хостинга.

1. Конструктор сайтов


Примеры: tilda, wix, lpgenerator.
Примерный чек: $10-$50 в месяц.



Это самый простой и заманчивый для стартапа вариант. Здесь поставщик услуги уже позаботился обо всем, вам даже не понадобится программист. Просто заходите, создаете свою страничку из шаблонов, нажимаете «сохранить» и все. Ваша страница видна миру — можно работать.

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

2. Shared-хостинг


Еще его называют «Шаред» или просто «Хостинг».

Примеры: timeweb, masterhost, reg.ru.
Примерный чек: $2-$30 в месяц.



Самый дешевый вариант — разместить сайт на php. Shared-хостинг — это физически большой железный сервер, на котором созданы изолированные окружения для работы десятков и сотен клиентов хостинга. Вам выдается доступ к админке и логин/пароль для доступа к FTP. Вы выкладываете свой код — и он работает. При этом сотрудники хостинга (как правило, хмурые бородатые дяденьки) следят за тем, чтобы у вас не было проблем с «железом», операционной системой, базой данных, веб-сервером. Ваша зона ответственности — только код. Это значит, что вы не можете менять практически ничего в настройках сервера. Такой вариант отлично подойдет для сайтов на стандартных движках, блогов, небольших интернет-магазинов. Но есть два случая, при которых этот вид хостинга может принести проблемы.

1. Когда у сайта начинает расти показатель посещаемости. В этом случае либо все начинает «тормозить», либо хостер грозится перевести вас с тарифа за символические $2 на вполне ощутимые $50-100, а если не заплатите — отключить.

2. Когда вам нужен новый функционал. Например, поставить вот эту новую библиотеку обработки картинок или использовать вот ту хипстерскую базу данных. В варианте с shared-хостингом это сделать не получится. Вы пользуетесь тем, что для вас предусмотрели упомянутые выше бородатые дяденьки.

Если ваш сайт больше похож на «убийцу Убера», чем на «блог на Wordpress», есть две альтернативы: собирать свой сайт на облачных сервисах или смотреть в сторону полноценных виртуальных машин.

3. Облачные сервисы


Примеры: Amazon Web Services, Microsoft Azure, Google Cloud Platform.
Примерный чек: от $1 до бесконечности.



Здесь вы собираете свой веб-сервис из огромного набора кубиков и деталей, довольно приятных. Вот у нас веб-сервер, вот база данных, вот очередь сообщений, вот хранилище для фотографий котиков, вот machine learning по ним, вот push-оповещения на мобильные — и ваш новый уникальный вариант кошачьего Тиндера готов.

Если разобраться, как работают эти кубики, можно довольно быстро собирать рабочие продукты с минимумом программирования. Приятный бонус на старте: оплата обычно идет не по абонентке, а за фактически потребленное количество ресурсов. Например, по числу запросов к базе данных, объему файлов в хранилище, числу разосланных уведомлений и т.д. То есть оплата за хостинг начинается с нуля и растет пропорционально росту нагрузки. Это позволяет стартапу долгое время масштабировать свою IT-инфраструктуру, понемногу увеличивая сумму затрат на хостинг.

Минусы облачных сервисов гармонично вытекают из их плюсов.

1. Вы ограничены тем функционалом, который заложили разработчики сервисов. Конечно, довольно широкий функционал дает много возможностей, но (!) чуть-чуть поднастроить его под себя не получится. Работает правило: используем как есть или переписываем с нуля.

2. По мере роста потребления ресурсов стоимость облачного сервиса может стать неоправданно высокой. Да, этот вид хостинга позволяет начать с $10. Для прототипа продукта или запуска стартапа с первой парой клиентов — прекрасно. Но если проект взлетит, то появляется риск платить пропорционально $10 000 за пару тысяч своих клиентов. И здесь нужно хорошо просчитать экономику.

Но даже если затраты на хостинг были заранее рассчитаны, вам все равно может понадобиться съехать с облачных сервисов. Причины могут быть и локальные (технические ограничения), и общерыночные (изменения российского законодательства). Важно учитывать, что просто «взять и переехать» из «облака» не получится. Придется дорого и долго программировать. Это тоже вариант, и его нужно просчитать заранее, чтобы понимать стоимость риска.

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

4. Виртуальные машины


Они же VM (Virtual Machine), VPS (Virtual Private Server), VDS (Virtual Dedicated Server) или просто «Виртуалки».

Примеры: Digital Ocean, Selectel, Amazon EC2, Azure VM.
Примерный чек: $5-$100 в месяц.



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

Плюсы очевидны. Это полноценная машина, на которую можно устанавливать любой софт и настраивать его любым способом. Если с физическим сервером случится беда, хостер все починит сам, вы даже об этом, возможно, не узнаете. Кроме того, размер машины можно увеличивать по мере необходимости. Например, начать с варианта за $5, а потом взять нужный дополнительный объем, просто нажав кнопку «Расширить» и заплатив за него. А еще здесь можно запустить несколько машин и разделить между ними роли (веб-сервер — база данных) и нагрузку (веб-сервер 1, веб-сервер 2, веб-сервер 3).

Минусы тоже есть. Теперь настраивать под себя операционную систему и софт не только можно, но и необходимо. К тому же приходится следить за локальными процессами работы (хватает ли оперативной памяти, достаточно ли места на дисках, не упала ли база данных). И делать это нужно самостоятельно, постоянно и лучше профессионально.

Виртуальные машины подойдут большинству стартапов как на старте, так и во время бурного роста. Главное, чтобы в команде был хороший админ (или хотя бы была возможность привлечения такого специалиста). Всем стартапам стоит посоветовать сразу делить сайт на части и использовать несколько машин вместо одной большой. Это поможет расти в будущем. В момент, когда расходы на хостинг составят пару сотен долларов, можно будет задуматься о переходе на физические сервера. Именно задуматься, сесть и посчитать, прикинуть варианты, а не переезжать в «пожарном режиме», когда страдают клиенты и горят нервные клетки основателей.

5. Аренда выделенного сервера


Он же Dedicated Server, или просто «Дедик».

Примеры: Hetzner, Selectel, Servers.ru, Hostkey.
Примерный чек: $50-$500 в месяц.



Это аренда настоящего физического сервера. Можно выбрать любую конфигурацию «железа», любую операционную систему и получить мощнейшую машину. Либо поднять свою систему виртуализации и самостоятельно нарезать нужное число «виртуалок». Трюк в том, что аренда выделенного сервера обходится в среднем в 3-5 раз дешевле аренды «виртуалки» соответствующей мощности. Или, иными словами, за те же деньги можно получить в 3-5 раз больше ресурсов.

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

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

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

6. Покупка собственного железа


Примерная цена: $2 000-$10 000 за сервер разово.



«Железо» можно не арендовать, а купить. Вполне рабочий вариант, если вам очень нужно освоить несколько миллионов, в смысле, превратить операционные (ежемесячные) расходы в капитальные (разовые). И вы точно уверены, что:

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

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

А минусов хватает. Если на сервере что-то сгорит — это ваша проблема. В лучшем случае производитель сервера пришлет замену. Если мощности «железа» не будет хватать, то вы либо докупаете новые сервера (получив у себя зоопарк из нескольких поколений машин), либо продаете текущее «железо» на Avito и покупаете новое.

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

Резюме


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

Бурного роста и высокого аптайма!

Комментарии (25)


  1. nikitasius
    26.09.2017 15:59
    +1

    1. Покупка собственного железа

    &


    Вполне рабочий вариант, если вам очень нужно освоить несколько миллионов, в смысле, превратить операционные (ежемесячные) расходы в капитальные (разовые).

    Хотел бы добавить, что платить в процессе все равно надо (питание + канал). И что в идеале надо покупать не 1 сервер (так как если у вас 1 юнит, а хостер дает 3..), чтобы не терять.


    И это серьезный шаг (финансы и саппор). Что до расходников — с производителем делается контракт, и он присылает запчасти на замену.


    Так же — если сервер в другой стране и у вас там "шкаф"… то в идеале самому туда ехать. Так что расходов намного больше (как и мощности).


    1. a-egor
      26.09.2017 17:52

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


  1. JediPhilosopher
    26.09.2017 16:19
    +3

    Расскажу немного о своем опыте (делал хостинг для проекта пешеходной симуляции, о котором когда-то писал в https://habrahabr.ru/post/257563/ ). Сервис состоит из фронта с веб-редактором карт, и бэкенда занимающегося симуляцией, который бывает сутками молотит всеми доступными ядрами.

    Сперва пока проект был в зародыше, использовали облачный хостинг Heroku. У них есть бесплатный Hobby-план, плюс куча всяких аддонов (БД, статистика, DNS и вагон других) с бесплатными версиями. Удобный деплой — собрал проект в .war файл и залил с помощью их CLI. Для начальной стадии проекта весьма приятно, все просто настраивается. При этом можно гибко менять затраты ресурсов: например перед статьей на хабре я перевел сервис на платный план, он пережил хабраэффект, после чего через пару дней я вернул его на бесплатный затратив всего несколько долларов.
    Но это все касалось только фронта, бэк в это время работал на моем домашнем компьютере. Если же переносить туда все, то получалось дорого — пара платных нод для фронта и бека, плюс платный план на облачную БД — все вместе выходило далеко за 100$ в месяц, при этом при очень скромных параметрах (например ноды имели всего 1 гиг памяти).
    В общем для требовательных к ресурсам проектов это не вариант, а вот для старта небольшого и нетребовательного подходит замечательно.

    Затем начали искать выделенный сервер. Тут все понятно, за ~50$ в месяц можно получить неплохой сервер c 4 ядрами и 32 Гб памяти у Hetzner, которого в целом хватит и на бек, и на фронт. У отечественных хостеров все как-то грустнее, цена повыше, машины послабее. Проблема в том, что платить за него планировали со счета ООО, и чтобы списывать это в затраты и вычитать из налогов как я понял получатель платежа должен быть юрлицом в РФ (тут мог что-то не так понять, не я этим занимался), в итоге выбирали из российских компаний.

    Но потом подвернулся один вариант с VDS. Попробовали его и остались на нем. За даже чуть меньшие деньги получили 3 VDS — слабенькие для фронта и БД, мощный для вычислений на бэкенде. Эксперименты показали, что вычисления на VDS идут в общем не медленнее чем на сопоставимом железном компьютере, так что даже для требовательных к CPU сервисов VDS вполне подходит, что было для меня некоторой неожиданностью. При этом решилась часть проблем с бекапами — их хостер делает за нас. В итоге работает не хуже DS, идеологически правильнее (разные компоненты системы уже разнесены на разные машины, объединенные в VPN, при необходимости можно менять мощность каждой из них отдельно), перекинули часть рутины на хостера. На этом варианте и остановились.


    1. a-egor
      26.09.2017 18:00
      +1

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


    1. ser-mk
      26.09.2017 21:56

      3 VDS — слабенькие для фронта и БД

      а чем характеризуется слабость для фронтэнда и БД?


      1. JediPhilosopher
        26.09.2017 22:42

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


    1. devlev
      27.09.2017 08:09

      А что за компания VDS (можно в личку)


      1. JediPhilosopher
        27.09.2017 18:27

        Ответил в личку


  1. flamencist
    26.09.2017 16:22

    Сам пользуюсь microsoft bizspark, хостинг — 3 года бесплатно


    1. a-egor
      26.09.2017 18:05
      +2

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


  1. Suvitruf
    26.09.2017 17:57

    У Y Combinator, к примеру, можно получить перк на Azure, AWS, Digital Ocean и т.п.
    К примеру, 500k $ на Azure.

    У ФРИИ ничего такого нет?


    1. friifond Автор
      26.09.2017 18:42

      Да, есть. Microsoft — партнер ФРИИ, стартапы акселератора могут стать участниками программы Bizspark и получить облачный грант: www.microsoft.com/ru-ru/ms-start


  1. DavidKakaladze
    26.09.2017 18:40

    6. Покупка собственного железа

    Примерная цена: $2 000-$10 000 за сервер разово.

    Помимо указанных выше затрат на питание и канал, хорошо бы его разместить в ЦОДе, чтобы оно работало в нормальных условиях и нанять персонал который это все будет обслуживать и это без учета возможно необходимых лицензий, ПО и прочего. Одним словом есть много скрытых затрат и считать «в лоб» не всегда корректно.


    1. JediPhilosopher
      26.09.2017 22:44

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


  1. jura12
    26.09.2017 19:21
    -1

    у меня дома в винде на ноуте в виртуалбоксе сайт на дебиане тестируется. скоро туда передет второй который в продакшене.
    преимущества: 1.стоимость (оплата эл-ва) 2.производительность 3.переносимость (вирт бокс). 4.возможности хостинга.
    недостатки: 1.настройка (делается либо с помощью avestacp либо ispconfig) 2.обслуживание и доведение до приемлемого уровня безопасности.


    1. a-egor
      26.09.2017 20:01

      Плюсы есть, да. С домашнего сервера обычно переезжают, когда надоедает, что слишком часто: моргнул свет / отключили интернет / кошка задела шнур. В датацентрах, конечно, такое тоже случается, но примерно на порядок реже.


      1. jura12
        26.09.2017 20:17

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


        1. a-egor
          26.09.2017 20:42

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


        1. nikitasius
          27.09.2017 00:33

          т.е. потери данных нет

          Диски Диск на ноутах умирают умирает тоже.


          *поправил


          1. jura12
            27.09.2017 01:13

            для бэкапа у меня usb hdd вставлен. и бэкаплю всю виртуальную машину. но в идеале надо кластер в виртуальной машине сделать. чтоб один экземпляр можно было бэкапить пока второй работает. да и заменить винт если что в ноуте можно самому.


    1. QtRoS
      27.09.2017 00:00

      А Вы NAT настроили или айпи белый?


      1. jura12
        27.09.2017 00:09

        айпи белый на роутере, пробросил порты через нат на локальный адрес ноута.
        я даже с днс не заморачивался. там где покупал доменное имя днс сервер уже есть. просто перенаправил http и https на свой роутер.
        и почту настраивать особо не надо. с ноута почта отправляется и ладно. если очень надо брендовая почта то можно ее в яндекс Почта для домена настроить.
        единственное я купил еще доменное имя для самого ноута.


  1. mclouds
    26.09.2017 19:29

    Статья правильная. Нам часто задают вопросы именно ребята, которые запускают стартапы. Мы закрываем 3-й пункт и 4-й пункт статьи.

    VPS хороши, как правило, когда сервера между собой не надо объединять в высокоскоростную локальную сеть. И их немного. Имеют статику наружу.
    Тем-же, кому необходима в проектах связность между серверами, например 10gbit — подойдет IaaS. Также сервера можно убрать за NAT и настроить правила брандмауэра на периметре сети. Ну и масштабирование, понятно, тут уже никого не удивишь. Группа VPS совокупно выйдет дешевле чем облако IaaS, но не будут выступать однородной инфраструктурой. По нашему опыту, проекты по-тяжелее работают в IaaS, проекты по-легче на группе VPS.


  1. Pilat
    28.09.2017 10:45

    ИМХО, надо забить на проблемы хетзнера с юрлицами и делать всё на нём. Три тысячи рублей и вопрос закрыт. Остальные 99.99% случаев рассматривать индивидуально.


  1. achekalin
    28.09.2017 12:46

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

    Ну, без программирования и без хорошего понимания, как и с чем внутри облака взаимодействует, можно отгрести за сайт на WP счет на очень приличную сумму — притом счет «по факту», именно за реально что-то потребленное.
    Далеко не надо ходить — заведите себе текстовый аккаунт на Azure (на виртуальный счет автоматом ляжет приличная сумма «на поиграть»), создайте там 1-2 виртуалки, и повозитесь с ними — ваша «приличная начальная сумма» кончится так быстро, что станет страшно за счет на это же, но за полный месяц.
    Так что — либо зная подробности оплаты, работы, зная программирование и администрирование (вы же услуги арендуете, а не работу сайта), либо готовьте кошелек.

    Приятный бонус на старте: оплата обычно идет не по абонентке, а за фактически потребленное количество ресурсов.

    Неприятный бонус: счет будет в разы, а то и на порядки очевидно ожидаемого. Как в кафе: можно взять бизнес-ланч, а можно по отдельным блюдам. Но все это будет дороже пирожка в соседней палатке (даже если пирожка и хватит).

    Так что не фантазируйте: (особенно) для начинающего бизнеса выгоднее физический сервер, либо виртуалка на DigitalOcean. Сурово выгоднее.

    А для тех, кто лезет в облака, нужно хорошо понимать (что приходит с опытом) «что почем».

    P.S. За что вы «Облака» и «Виртуальные машины» пишете с прописной буквы? Это чьи-то имена?