Я работаю над своим [первым] стартапом уже месяц, и хотя до альфа-релиза, вероятно, еще как минимум месяц, я хочу знать, как правильно его развернуть. Сайт будет иметь первоначальную высокую нагрузку (сеть + ЦП) для нового пользователя, поэтому я думаю о создании отдельного сервера/очереди для этого начального процесса, чтобы он не замедлял работу сайта для существующих пользователей.
Основываясь на моих исследованиях, я в настоящее время склоняюсь к nginx + haproxy + unicorn/thin + memcached + mysql и развертыванию на Linode. Тем не менее, у меня нет предыдущего опыта ни в одном из вышеперечисленных; следовательно, я надеюсь использовать опыт сообщества.
- Вышеупомянутая архитектура кажется разумной? Любые предложения/статьи/книги, которые вы могли бы порекомендовать?
- Линод хороший выбор? Heroku/EY кажутся мне слишком дорогими (по крайней мере, до тех пор, пока у меня не будет достаточного дохода), но не упускаю ли я какой-то другой лучший вариант? МедиаТемпл?
- Любые хорошие предложения по архитектуре балансировки нагрузки? Я все еще читаю об этом.
- Лучше иметь 2 отдельных экземпляра сервера Rails на 2 отдельных линодах или запускать 1 экземпляр на линоде с удвоенной емкостью (с точки зрения ОЗУ/хранилища/пропускной способности)? Со скольких линодов я должен начать?
- Какой дистрибутив Linux выбрать? (Linode предлагает 8 различных — http://www.linode.com/faq.cfm) Есть ли какие-либо относительные преимущества/недостатки между ними для сайта Rails?
Прошу прощения, если какие-либо из моих вопросов будут глупыми или противоречивыми; пожалуйста, объясните это моей неопытностью.