Архитектура с меньшими по сравнению с большими машинами для большой нагрузки - PullRequest
0 голосов
/ 21 июня 2019

У нас есть небольшое приложение с внешним интерфейсом AngularJS и внутренним NodeJS. Нам нужно разместить его для большего числа пользователей, скажем, 100 000. Мы поместили приложение в контейнер и собираемся использовать AWS ECS для размещения приложения.

Я создал отдельные кластеры для внешнего интерфейса и внутреннего интерфейса в AWS ECS. Но я не уверен, какой тип экземпляра EC2 (машины) мне выбрать?

Я планирую создать 48 контейнеров для обработки груза. Каждый контейнер имеет жесткий лимит в 500 МБ, поэтому он не будет использовать сверх этого значения. Какой экземпляр (машину) я должен использовать?

  1. Кластер больших машин. Например: 3 X 8 ГБ оперативной памяти содержит 48 контейнеров (16 контейнеров на каждом компьютере).
  2. Группа небольших машин. Например: 12 X 2 ГБ ОЗУ содержит 48 контейнеров (по 4 контейнера на каждом компьютере).

То, что я думал, было:

  • Для небольшой машины, например, t2.small (2 ГБ ОЗУ, 2 ВЦП), который содержит 4 контейнера, совместно использует 2 ГБ памяти и 2 ВЦП между этими 4 контейнерами.
  • Но для больших машин, например, 8 ГБ ОЗУ с 2vCPU содержит 16 контейнеров, совместно использующих 8 ГБ памяти и ТАКЖЕ ДЕЛИТСЯ ЭТИМ ЖЕ 2vCPU

Итак, я использовал меньший машинный подход. Но есть ли другой фактор, по которому я скучаю?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...