Хостинг для стартапа: конструктор, облака или свое железо?



    Какой хостинг выбрать? Этим вопросом рано или поздно задается любой стартап. Ответ в каждом случае придется искать самостоятельно — оценивать плюсы-минусы, прикидывать риски и считать бюджет. Максимально упростить этот процесс и систематизировать виды хостингов и их особенности нам помог выпускник ФРИИ и основатель проекта 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-хостинг. Дешево и сердито.
    • Для веб-сервиса с богатым функционалом можно пробовать либо Облачные сервисы (если вы любите и умеете ими пользоваться), либо Виртуальные машины.
    • Если чек за хостинг высокий и хочется сэкономить, можно присмотреться к аренде физического сервера.
    • Выбирая любой вариант, не забудьте посчитать, в какой момент станут критичны ограничения для конкретно вашего сервиса и прикинуть варианты, что с этим можно будет сделать.

    Бурного роста и высокого аптайма!
    Фонд развития интернет-инициатив 154,15
    Экспертиза и инвестиции для стартапов
    Поделиться публикацией
    Комментарии 29
    • +1
      1. Покупка собственного железа

      &


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

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


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


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

      • 0
        Согласен с вами. По деньгам может получиться интересно только если уже есть свой штат техников, хоть как-то сопоставимый со штатом хостера.
      • +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
          Похоже, вы сформулировали суть статьи: все что удобно передать хостеру, нужно передать хостеру. Но чтобы получилось адекватно по деньгам.
          • 0
            3 VDS — слабенькие для фронта и БД

            а чем характеризуется слабость для фронтэнда и БД?
            • 0
              Ну там кажется всего два ядра и два гига памяти. У фронта еще и жесткий диск мелкий, только для веб-сервера и логов. Учитывая маленькую нагрузку — больше и не надо. Третья vdsка заметно мощнее, там вроде 8 ядер и 16гб.
            • 0
              А что за компания VDS (можно в личку)
          • 0

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

            • +2
              Главное понимать, сколько будет стоить оставаться или переезжать, когда грант закончится.
              • 0
                Не получится vendor-lock?
              • 0
                У Y Combinator, к примеру, можно получить перк на Azure, AWS, Digital Ocean и т.п.
                К примеру, 500k $ на Azure.

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

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

                  Помимо указанных выше затрат на питание и канал, хорошо бы его разместить в ЦОДе, чтобы оно работало в нормальных условиях и нанять персонал который это все будет обслуживать и это без учета возможно необходимых лицензий, ПО и прочего. Одним словом есть много скрытых затрат и считать «в лоб» не всегда корректно.
                  • 0
                    Да, мы когда смотрели — оказалось коллокейшен стоит не намного дешевле чем аренда выделенного сервера у какого-нибудь хетцнера, что делает покупку своего железного сервера для маленького стартапа бессмысленным делом.
                    • 0
                      именно так, это имеет смысл если нужно какое-то определенное железо которое либо выше крыши стоит у хостера если вобще сусшествует. К примеру, 40 ядер, 1ТБ памяти или процессоры должны быть 4GHz+ быстрыми (в датацентрах вроде популярны серверные xeonы с 2.5GHz).
                  • –1
                    у меня дома в винде на ноуте в виртуалбоксе сайт на дебиане тестируется. скоро туда передет второй который в продакшене.
                    преимущества: 1.стоимость (оплата эл-ва) 2.производительность 3.переносимость (вирт бокс). 4.возможности хостинга.
                    недостатки: 1.настройка (делается либо с помощью avestacp либо ispconfig) 2.обслуживание и доведение до приемлемого уровня безопасности.
                    • 0
                      Плюсы есть, да. С домашнего сервера обычно переезжают, когда надоедает, что слишком часто: моргнул свет / отключили интернет / кошка задела шнур. В датацентрах, конечно, такое тоже случается, но примерно на порядок реже.
                      • 0
                        Обратите внимание я написал «на ноуте». т.е. потери данных нет. есть некоторые вопросы по настройки возобновлению работы.
                        Первый опыт по переезду со стандартного хостинга на ноут я получил после масштабной ддос атаки на сайт на хостинге и подсчитал сколько денег нужно для ее отражения.
                        Была статья на хабре или гдето что самый дешевый способ хостинга это размещение своего системника в цод.
                        • 0
                          Если вы только про тестирование, а не продакшн — то отличный вариант.
                          Но если важен аптайм, до держать боевой сервер дома без резерва каналов интернет и питания, мягко говоря, тяжело.
                          Согласитесь, место, задуманное для размещения серверов, подходит для этого лучше, чем место для этого не задуманное.
                          • 0
                            т.е. потери данных нет

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


                            *поправил

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

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

                          • 0
                            айпи белый на роутере, пробросил порты через нат на локальный адрес ноута.
                            я даже с днс не заморачивался. там где покупал доменное имя днс сервер уже есть. просто перенаправил http и https на свой роутер.
                            и почту настраивать особо не надо. с ноута почта отправляется и ладно. если очень надо брендовая почта то можно ее в яндекс Почта для домена настроить.
                            единственное я купил еще доменное имя для самого ноута.
                        • 0
                          Статья правильная. Нам часто задают вопросы именно ребята, которые запускают стартапы. Мы закрываем 3-й пункт и 4-й пункт статьи.

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

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

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

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

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

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

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

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

                              P.S. За что вы «Облака» и «Виртуальные машины» пишете с прописной буквы? Это чьи-то имена?
                              • 0
                                По моему скромному мнению, ни один из вариантов стартап не потянет без админа, кроме сайта визитки разумеется. А если в команде есть админ — значит он потянет и железку. Учитывая то что сейчас на свою железку почти всегда сначала ставят какой нибудь гипервизор, так называемые издержки на саппорт железа становятся не такие уж и внушительные. 1-3 фирменных сервака не потребуют ездить в цод чаще чем раз в год (а может и реже — если стартап статичен).
                                И это во времена, когда домашний инет часто 100 мбит эзернет, а у некоторых и гиг по оптике приходит, люди тут на полном серьезе размышляют о выгоде vps за 50$*12=600$*3года = 1800$ за тухлую виртуалку с диском меньше чем на сммртфоне размещенную где то в песочнице… да за такие деньги, на тесты дома можно купить десктоп напичканый ядрами и ssd который порвет любой vps за 500$/мес.

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


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


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

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

                                  Самое читаемое