После установки на сайте чата ко мне стали периодически стучаться люди и задавать разные вопросы. Особенно часто я получаю вопрос о том, где лучше всего хостить Rails-приложения. Вопрос, прямо скажем, очень похож на “какую машину лучше всего купить”. Ответ на него очень сильно зависит от того, что вы собираетесь с этой машиной делать – дрифтовать по улицам, лазать по горам, возить холодильники или катать инвестиционных банкиров. Выбор хостингы в этом отношении нисколечки не отличается и тоже очень сильно зависит от того, какие приложения вы собираетесь хостить. Давайте рассмотрим наиболее важные параметры, которые нужно учесть при выборе хостинга.
Расположение
Перед тем, как выбирать хостинг-провайдера, вы должны четко осознавать, где живут ваши основные посетители. Если это россияне или жители СНГ – нет смысла покупать хостинг в США. Равно как и наоборот. Несмотря на то, что скорость каналов растет, разница будет сильно чувствоваться, особенно если в вашем проекте много графики, видео или другого тяжелого контента. Поэтому хостера лучше выбирать среди тех, чьи сервера располагаются в стране, в которой живут ваши посетители.
Тип хостинга
Платформа Rails гораздо более требовательна в плане хостинга, чем, скажем, PHP, поэтому далеко не каждый провайдер поддерживает эту платформу. А среди тех провайдеров, которые заявляют о поддержке, далеко не все предлагают приемлимый вариант развертывания. Поэтому shared-хостинг – не лучший вариант для размещения рельсового приложения. Если вы действительно очень сильно ограничены в средствах (хотя я уверен, что выделить лишние $10 на нормальный хостинг – надуманная проблема), то при выборе shared-хостинга с поддержкой Rails обратите внимание на то, чтобы хостинг-провайдер предоставлял для развертывания модуль Passenger, а не FastCGI или CGI. Два последних варианта – большой геморрой. Если не уверены в том, каким образом вам предстоит поднимать приложения на данном провайдере – обязательно проконсультируйтесь со службой поддержки.
Если все же нашлась лишняя десятка, то уже можно покупать VPS – виртуальный сервер с позможностью настройки. Этот вариант хорош тем, что вы не ограничены тем набором программного обеспечения, которое хостер счел необходимым, и вольны устанавливать необходимое ПО по своему вкусу. VPS приемлем для небольших и средних проектов со сравнительно небольшой нагрузкой и является идеальным вариантом для старта нового проекта.
Если же проект достаточно крупный или ресурсоемкий, то вам потребуется выделенный сервер (dedicaded) или даже cloud-платформа вроде Amazon EC2. Хотя, если вы работаете с таким проектом, вы наверняка уже все знаете сами :)
Далее речь пойдет преимущественно о VPS и Dedicaded.
Специализация
При выборе хостинга очень важно, чтобы у техподдержки хостера уже был опыт работы с проектами на Rails, в противном случае вам придется решать все проблемы самостоятельно и, возможно, даже учить этому специалистов хостера. Чтобы такого не было, выбирайте хостеров, которые упомянаются в статьях о Rails, в сообществах, форумах, а так же тех хостеров, которые специализированно занимаются поддержкой Rails-проектов. Очень желательно, чтобы хостер предоставлял инструкции по настройке Rails и сопутствующего ПО на своих серверах.
Объем памяти
Среднее Rails-приложение занимает в оперативной памяти порядка 100 мегабайт на один процесс, на меньшее вряд ли стоит рассчитывать (особенно если вы используете RMagic, но тут готовьтесь к худшему). Поэтому минимальный объем оперативной памяти, который можно считать приемлимым – 256 мегабайт. С ростом посещаемости вам придется поддерживать несколько процессов одновременно, поэтому оперативной памяти потребуется больше.
Объем дискового пространства
Необходимый объем дискового пространства зависит от того, будет ли в вашем проекте возможность загрузки изображений, видео и других файлов. Если нет – объем диска для вас практически не важен, само приложение занимает очень мало места. Если загрузка файлов имеет место, то объем диска нужно рассчитывать из общего количества файлов и их среднего объема. Например, для изображений с фотоаппарата можно посчитать так: до 5 мегабайт на изображение плюс еще 1 мегабайт на уменьшенные копии. Итого на каждые 1000 картинок – порядка 6 гигабайт.
Бэкап
Для VPS и dedicaded-хостинга весьма актуально то, как организовано резервное копирование данных. Если хостер берет эти заботы на себя и это включено в план – очень хорошо. Некоторые хостеры предлагают резервное копирование в качестве дополнительной услуги за небольшую плату. Если же резервного копирования не предусмотрено вовсе – можно относительно недорого организовать резервное копирование на Amazon S3. Так или иначе, этот момент обязательно нужно учитывать.
Масштабируемость
Хорошим проектам свойственно вырастать. Заранее покупать сверхмощный сервер не стоит, однако о возможности роста стоит задуматься заранее. При выборе хостера обратите постарайтесь узнать, насколько легко будет, например, увеличить объем оперативной памяти для проекта или объем диска. Если вы арендуете выделенный сервер, узнайте, насколько быстро хостер сможет поставить новый сервер для переезда.
Для крупных проектов также важно, чтобы у хостера была возможность аренды серверов с различной конфигурацией, заточенной под решение конкретных задач. Например, отдельных серверов для баз данных, хранения и раздачи файлов, обработки видео и других специализированных задач.
Поддержка
Рано или поздно какие-то вопросы или проблемы с хостингом все равно возникнут, поэтому лучше выбрать хостера, который заранее дает ответы на наиболее часто возникающие вопросы. Установка и настройка ПО, обновление, бэкапы, масштабирование – чем больше ответов известно заранее, тем меньше нервов вы потратите в трудных ситуациях. Для решения особо сложных вопросов вам придется обращаться в службу поддержки, поэтому лучше заранее удостовериться, что с ней можно иметь дело. Сделать это проще всего попросив поделиться опытом тех, кто уже пользуется услугами выбранной вами компании.
Цена
Стоимость хостинга не должна являться оределяющим фактором. Если стоимость хостинга для вас важнее, чем надежность – возможно, вы выбрали не ту платформу. Подумайте, может еще не поздно перейти на PHP, его можно хостить практически бесплатно :)
Если вы все же уверены, что Rails – это ваш выбор, будьте готовы к тому, что стоимость нормального хостинга начинается где-то от $20. Это стоимость VPS с 256МБ оперативной памяти и 10ГБ диска. Найти дешевле довольно сложно, но можно.
Надеюсь, я смог ответить хотя бы на самые базовые вопросы, которые могут возникнуть при выборе хостинга для Rails-приложений. Если что-то упустил – обязательно сообщите мне об этом в комментариях
Внимание! Это последняя заметка, которую вы можете прочитать в старой RSS-ленте. Если вам нравится читать Записки из тех.отдела через RSS – подпишитесь на новую ленту по адресу http://feeds2.feedburner.com/railorz

http://www.mosso.com/cloudservers_pricing.jsp За 256MB/10GB в месяц получается чуть больше $10, а по качеству не отличить от топовых VPS’ов.
Пользуюсь хостингом railsplayground.com взял по акции 512 мб vps сервер за 20 долл в месяц. Вполне адекватная и быстрая поддержка. Конечно, пинги долгие, но год назад такого дешевого и жирного предложения не смог найти. Хостятся там у меня простенькие сайты, без претензий.
Linode.com по совету Толи Михайлова (reailgeek.com) - доволен. FirstVDS просто расстроил своим отношением к клиентам - писал у себя в блоге.
Обычное заблуждение - как раз в том случае, если на проекте вного видео и объемной графики, то хостинг за океаном работает практически так же.
Но когда сайт более-менее лёгкий и быстрый, то лишние 250 мс раундтрипа до Штатов очень даже заметны.
2 Cheba: 10 баксов – это без учета трафика, реально же цены у них получаются на уровне Slicehost’а (ксати, владеет моссо и слайсхостом одна компания).
Alexey Poimtsev: тоже купил Linode доволен, разве что DNS Manager у них очень дубовый,по сравнению с Slicehost или Webfaction.
Понравился railsboxcar.com от довольно известных Planet Argon. За $35 256М/6G показалось вполне приемлимо, если учесть, что все работает из коробки на passanger. + есть удобные тулзы для деплоя http://github.com/planetargon/boxcar-conductor
А вот гугло-реклама в RSS это кто вставляет? Фидбарнер, или в этом движке идёт? Или гугло-ридер балуется?
Подписываюсь под каждым словом
Спасибо за первый комментарий! Пошёл на http://mosso.com . Потом очень удивился, когда узнал что моссо и слайсхост - это одно и то же. Даже серваки те же. После общения с тех. поддержкой выяснилось, что они просто дочерняя компания и в целях эксперемента делают разные цены.
А кто что думает о heroku ?