2016-12-15 8 views
1

Я использую функцию Lambda для отправки сообщения в очередь SQS. Когда сообщение помещается в очередь SQS, мне нужно вызвать другую функцию Lambda для обработки сообщения в очереди.Как вызвать функцию Lambda с использованием SNS на основе очереди SQS

Я думаю, что мы можем реализовать с использованием SNS. Я новичок в службе AWS. Пожалуйста, предложите решение для запуска функции Lambda на основе сообщений очереди SQS с помощью SNS.

+0

Вы можете опустить шаг SNS - https://cloudonaut.io/integrate-sqs-and-lambda-serverless-architecture-for-asynchronous-workloads/ –

+0

Спасибо за ваш ответ @Vlad Я ищу обработку очереди в реальном времени. ваш предлагаемый подход будет работать в режиме реального времени. – Team

ответ

0

Вам не нужен слой SNS между ними. С первого Lambda сделать 2 вещи

  1. Подставьте сообщение в SQS и
  2. Trigger лямбда, который будет обрабатывать событие

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

Таким образом, вы сохраните стоимость SQS, а также другого Lambda

+0

Запустить Лямбду, которая обработает событие - Как создать этот триггер? – Andy

+0

Проверьте эту ссылку для получения дополнительной информации о запуске лямбда самостоятельно. http://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html –

0

Я думаю, что будет зависеть от срочности обработки сообщений. Если вы хотите обработать все сообщения в режиме реального времени, отправьте их в SNS и подпишите свою Лямбду в эту тему.

Другим сценарием может быть то, где вы обрабатываете свои сообщения в реальном времени, и любой отказ часто возникает из-за некоторой зависимости, а затем в этом случае отправляет его в SQS и обрабатывает через Lambda Polling позже.

Lambdas triggering довольно гибкий во всех этих случаях, вы можете напрямую подписывать свою лямбду на тему SNS для обработки. Также вы можете запланировать свою лямбду для ее запуска на основе cron (полезно в случае опроса и обработки сообщений SQS)

+0

Не могли бы вы объяснить, как мы можем использовать SNS для обработки сообщений очереди sqs – Team

 Смежные вопросы

  • Нет связанных вопросов^_^