Добро пожаловать в клуб Sony Santos,
AWS - очень мощная архитектура, но с этой мощью приходит ответственность.Я, и, вероятно, многие другие, узнали, как сложно создавать приложения с использованием сервисов AWS.
Вы спрашиваете, с чего мне начать?На самом деле это очень хороший вопрос, но вам, вероятно, не понравится мой ответ.Вам необходимо прочитать и провести исследование обо всех технологиях, предлагаемых Amazon и даже другими поставщиками, такими как Rackspace, GoGrid, Google Cloud и Azure.Амазонку нелегко запустить, но она не предназначена для того, чтобы быть по-настоящему, ее цель - быть очень настраиваемой и иметь очень широкий API.Но вернемся к вашему вопросу.
Чтобы запустить простой веб-сервер, вам нужно запустить экземпляр EC2, этот экземпляр по умолчанию запускается на дисководе с именем EBS.По сути, диск EBS является обычным жестким диском, за исключением того, что вы можете делать с ним много других интересных вещей, например, снимать его с одного сервера и переносить на другой.S3 - это скорее система хранения файлов, более полезная, если у вас есть куча изображений или если вы хотите хранить много резервных копий ваших баз данных и т. Д., Но это не является обязательным требованием для простого веб-сервера.Все, что вам нужно, - это запустить экземпляр EC2, а все остальное произойдет за кулисами.
Если ваше приложение достигает большого трафика, у вас есть два варианта.Вы можете увеличить свою машину, выключив ее и запустив ее с более крупным экземпляром.Вообще говоря, это проще всего сделать, но вы попадете в точку, где вы либо не сможете обработать весь трафик с 1 экземпляром, даже при большем размере, и решите, что вам нужно два ИЛИ Вам понадобится более отказоустойчивое приложение, которое все еще будет подключено к сети в случае сбоя или обновления.
Если вы создадите второй экземпляр, вам потребуется выполнить некоторую форму балансировки нагрузки.Я рекомендую использовать amazons Elastic Load Balancer, поскольку его легко настроить, а его интеграция с облаком лучше, чем использование Round Robin DNS или такого приложения, как haproxy.Эластичные балансировщики нагрузки не дороги, я считаю, что они стоят около $ 18 / месяц + данные, которые передаются между балансировщиком нагрузки.
Но нет, вам больше ничего не нужно для масштабирования вашего сайта.2 экземпляра EC2 и ELB сделают свое дело.
Дополнительные вопросы, которые вы не задавали, но, вероятно, должны были задать.
Как часто экземпляр EC2 испытывает аппаратный сбой и сбой моего сервера.Что я могу сделать, если это произойдет?
Это происходит часто, обычно партиями.Иногда я провожу месяцы без проблем, тогда я получаю сбой нескольких серверов за раз.Но это вызывающе то, что вы должны планировать, я не сделал в начале, и я заплатил за это.Убедитесь, что вы создаете сценарии, и у вас есть резервные копии и план резервного копирования на случай, если ваш сервер не сможет.Будьте готовы к тому, что он не работает, или имейте решение с балансировкой нагрузки с первого дня.
1033 * Что самое сложное в масштабируемости?
Тестирование Тестирование Тестирование Тестирование ... Дон 'никогда не предполагал ничего.Также будьте готовы к внезапным всплескам трафика.Вы должны быть готовы ко всему, если за одну ночь вы посещаете от 1 до 1000 человек. Готовы ли вы справиться с этим?Вы проверили то, что, по вашему мнению, произойдет?
Удачи и веселья ... Я знаю, что у меня есть:)