Я хочу создать сервис, работающий в AWS, который будет получать метрики из другого сервиса A, также работающего в AWS, выполнять некоторую обработку, а затем публиковать его в другом сервисе B для вычисления общего использования ресурсов, работающего в другом публичном облаке,API для существующих сервисов A и B уже определены и находятся вне моего контроля.
Моя главная проблема заключается в том, что объем данных, которые я буду получать и публиковать, может быть высоким, и мне, возможно, придется сделать некоторыевычисления на этих данных перед публикацией результатов.Если служба должна работать по фиксированному периодическому расписанию, и мне нужно сделать ее устойчивой, как ее следует развернуть?
- Виртуальная машина EC2.
- Лямбда.
Дополнительно:
- Как сделать службу устойчивой / высокодоступной?
- Как масштабировать ее при больших объемах данных?Одна мысль состоит в том, чтобы разделить пространство ключей данных на основе клиента и т. Д. И выполнить вычисления в параллельных вычислительных экземплярах, которые независимы, не перекрываются.
- Если я храню данные в пути для промежуточной обработки, какя могу сделать данные в пути устойчивыми?
Эти вопросы относятся к инфраструктуре AWS, поскольку у меня очень мало предварительных знаний об AWS.
Номера образцов
- Входные данные из службы A: 10000 записей в минуту, каждая запись около 1 КиБ.Таким образом, 10 МиБ в минуту.
- Задержка обработки в услуге - максимум 0,1 секунды на запись.
- Данные, отправляемые в службу B: около 2 МиБ в минуту.Соединения через WAN.