2017-01-23 9 views
0

Я собираюсь запустить приложение iOS, которое будет связываться с моим пользовательским REST API. Сейчас я запускаю один экземпляр EC2 t2.micro, на котором запущен веб-сервер Apache с MySQLi. Прежде чем я продолжу его публикацию, я хочу услышать, какие шаги следует предпринять в отношении следующего.EC2, Webserver и MySQL

  1. Должен ли я запускать два отдельных экземпляра EC2? Один только для веб-сервера, а другой для обработки только базы данных?
  2. Как мне подойти к настройке базы данных? Должен ли я использовать MySQLi, или я должен использовать RDS Amazon?
  3. В связи с номером два, когда база данных и/или веб-сервер исчерпывают место, как эта проблема обрабатывается, чтобы она беспрепятственно добавляла пространство, позволяющее базам данных/веб-серверу продолжать рост? Я также читал кое-что о автомасштабировании.

Я буду ожидать много запросов в минуту на своем веб-сервере и хочу принять меры предосторожности. Все советы приветствуются. Спасибо.

ответ

0

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

1) Да. Разделение базы данных с веб-сервера (то есть 2 разных экземпляра EC2) имеет смысл по многим причинам. Это позволит вам отдельно распределять ресурсы, такие как память, процессор и т. Д. На каждый уровень вашего приложения отдельно. Вы не хотите, чтобы ваш веб-сайт и база данных конкурировали за одни и те же ресурсы. Кроме того, проблема, которая заставляет вас удалить один (веб-сайт или базу данных), не заставит вас также отказаться от другого. Если ваша база данных живет на одном из веб-серверов и вам необходимо выполнить техническое обслуживание, ваше приложение будет эффективно переходить в автономный режим, поскольку при обновлении ваша база данных будет удалена. Кроме того, в идеале вы защитите свой сервер базы данных в частной подсети в VPC. Если у вас есть веб-сайт и база данных на том же сервере, они оба будут в общедоступной подсети, так как вам нужен веб-доступ к интернет-шлюзу.

2) Зависит. Если вы хотите поддерживать полный контроль над сервером базы данных, чем использовать экземпляр EC2, в котором вы сохраняете управление операционной системой. Если вы хотите использовать такие функции, как Multi-AZ для высокой доступности, или позволить AWS управлять такими вещами, как обновления для вас, RDS может быть отличным вариантом. Стоимость также играет определенную роль. Для таких вещей, как read-replicas и Multi-AZ, вы будете платить больше, но вы покупаете производительность и высокую доступность. Таким образом, зависит от ваших требований. Вы можете найти функции RDS здесь: RDS Product Details

3) Для чего-либо, работающего на экземпляре EC2 (база данных или сети), или если вы решили использовать RDS, вы можете при необходимости и приложить дополнительные объемы хранилища. Тип выбранного вами хранилища будет зависеть от требований к производительности, вашего бюджета и вида рабочей нагрузки, с которой вы ожидаете видеть вашу базу данных. Amazon предоставляет варианты хранения, доступные вам, а также раздел для хранения большего объема данных здесь: RDS Storage Options

Если вас беспокоит слишком много запросов, подавляющих ваш экземпляр EC2 t2.micro, рассмотрите возможность создания балансировщика нагрузки ELB и настройки группа автомасштабирования, которая позволит вам расширить свои возможности по мере необходимости при распределении трафика, чтобы ни один сервер не был перегружен.

Смежные вопросы