Существует ли служба AWS для группирования и одновременного выполнения массового запроса к лямбде? - PullRequest
0 голосов
/ 08 ноября 2018

Это вариант использования: клиент запрашивает лямбду для вычисления массовой полезной нагрузки.

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

Я уже сделал это на стороне клиента, разбивая на части и вспоминая ответы, сливаясь, как если бы они были уникальными.

Теперь мне интересно, могу ли я использовать какой-либо сервис AWS для выполнения этого чанкинга, распараллеливания с лямбдой и вернуть его обратно, как будто уникальный запрос.

С другой стороны (если в коробке с AWS ничего нет), я мог бы подумать о разработке новой лямбды, которая будет выполнять вышеуказанное

1 Ответ

0 голосов
/ 08 ноября 2018

Функции шага AWS равно близко к тому, что вы ищете .Вы можете написать свой собственный рабочий процесс выполнения лямбда-функций (последовательно или параллельно).В вашем случае вам нужно обрабатывать каждый блок в параллельно .Это будет выглядеть следующим образом:

Parallel Processing of chunks using AWS Step Functions

Примечание : мне не известен способ динамического запуска нескольких функций Lambda вПараллельно используя пошаговые функции AWS.Если разделение фрагментов на n параллельных функций вам не подходит.Я бы посоветовал вам использовать SNS для параллельного запуска всех функций и после того, как каждая из них завершит проверку, сохранили ли остальные свои выходные данные в хранилище (S3 / Dynamodb / Mysql ... и т. Д.).Если да, сгруппируйте все выходные данные и сохраните их агрегирование, иначе ничего не делайте.Единственным недостатком этого является то, что вы не можете сделать это в рамках жизненного цикла HTTP.Пользователь должен будет тянуть за статус пакетной обработки.

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