Как заставить Aws Lambda работать непрерывно - PullRequest
1 голос
/ 13 января 2020

У меня есть AWS лямбда-функция, которая развернута в консоли. Поскольку он будет автоматически получать сообщение из какой-либо внешней очереди, я хочу, чтобы он продолжал работать непрерывно, а не по расписанию. Как я могу заставить aws лямбду работать непрерывно?

Ответы [ 2 ]

1 голос
/ 13 января 2020

Вы можете добавить триггер к своей лямбде и установить очередь SQS, на которую хотите ответить. В консоли AWS (в Интернете) вы можете сделать это либо из самой функции Lambda, либо из SQS (я бы посоветовал эту стратегию). Консоль проведет вас через детали для настройки правильной системы безопасности. Дополнительная информация о настройке: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-lambda-function-trigger.html

Общая информация о потреблении сообщений SQS в Lambda: https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html

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

ВАЖНО : Если вы хотите последовательно обрабатывать свою очередь, убедитесь, что для зарезервированного параллелизма вашей лямбды установлено значение 0.

Кроме того, если вы используете CLI или другое автоматизируйте c инструменты развертывания, убедитесь, что вы обновили свои файлы конфигурации, чтобы не перезаписывать настройки Lambda при развертывании.

РЕДАКТИРОВАТЬ : когда вы произносите внешнюю очередь; Вы имеете в виду очередь без SQS? Я думаю, это все еще можно сделать с другой системой. Лучший способ сделать это - поднять событие. Запустите Lambda с помощью http-запроса при добавлении сообщения. Если по какой-то причине вы не можете этого сделать, вы можете добавить расписание для своей Lambda и запускать его, скажем, каждые 5 минут. Больше информации о расписании: https://docs.aws.amazon.com/eventbridge/latest/userguide/run-lambda-schedule.html

0 голосов
/ 13 января 2020

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

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