#amazon-web-services #aws-lambda
#amazon-web-services #aws-lambda
Вопрос:
Я не уверен, правильно ли я работаю с aws lambda.
У меня 10 000 электронных писем в виде открытого текста, и мне нужно создать экран каждого электронного письма с помощью Google chrome puppeteer.
Лучше создать 10 000 заданий на lambda? Почему / почему нет?
Лучше ли создавать одноранговое задание для одной задачи? Почему / почему нет?
Лучше создавать одно задание на 100 электронных писем? Почему / почему нет?
Моя проблема в том, что запуск lambda ограничен 15 минутами, за 15 минут я не могу обработать все электронные письма, мне нужно, например, 2 часа.
Спасибо за любую подсказку.
Комментарии:
1. Ни один из них не лучше другого, это зависит от ваших ограничений. Создание 10 тыс. «заданий» может стоить немного дороже, но это будет сделано намного быстрее.
2. В моем случае меня не волнует время, я могу дождаться результатов.
3. Почему lambda? Почему вы не можете запустить задание в экземпляре EC2 или в задаче EC2? У них нет ограничений по времени.
Ответ №1:
Придерживаясь бессерверного, я бы пакетировал ваши запросы и отправлял их в SQS. Затем вы должны либо рассмотреть лямбда-триггер, либо лямбда-рабочий, который будет опрашивать этот SQS. Внедрение DLQ гарантирует, что все ваши задания будут сохранены в случае сбоя. Самое сложное при запуске lambda — это то, что он может уничтожить службу, работающую ниже по потоку …. наличие очереди с работником — хороший буфер.