是否可以从 AWS Kinesis 流触发特定的 lambda 函数?
Is it possible to trigger a specific lambda function from the AWS Kinesis stream?
是否可以从 AWS Kinesis 流触发特定的 lambda 函数?
我有多个订阅了运动流的 lambda 函数 (CREATE/UPDATE/DELETE),现在我只想触发基于 data/event 类型的特定 lambda 函数。
可能吗?如果不是,什么是更好的 architecture/way 来处理这个问题?
遗憾的是,您不能这样做。通常有两种方法可以解决这个问题:
- 将您的流连接到一个 lambda 函数。该函数将从流中接收所有记录并将它们分派给其他函数。调度可以是直接的,也可以通过专用的 SQS 队列进行调度。
/-----> SQS 1 ---> CREATE lambda
Kinesis---->Lambda ------> SQS 2 ---> UPDATE lambda
\-----> SQS 3 ---> DELETE lambda
- 同样使用一个函数,但这次UPDATE、CREATE和DELETE代码将在一个函数中。因此,在 lambda 处理程序函数中,您将使用基本的 if-then-else 条件来为更新、创建和删除功能调用不同的代码。
是否可以从 AWS Kinesis 流触发特定的 lambda 函数?
我有多个订阅了运动流的 lambda 函数 (CREATE/UPDATE/DELETE),现在我只想触发基于 data/event 类型的特定 lambda 函数。
可能吗?如果不是,什么是更好的 architecture/way 来处理这个问题?
遗憾的是,您不能这样做。通常有两种方法可以解决这个问题:
- 将您的流连接到一个 lambda 函数。该函数将从流中接收所有记录并将它们分派给其他函数。调度可以是直接的,也可以通过专用的 SQS 队列进行调度。
/-----> SQS 1 ---> CREATE lambda
Kinesis---->Lambda ------> SQS 2 ---> UPDATE lambda
\-----> SQS 3 ---> DELETE lambda
- 同样使用一个函数,但这次UPDATE、CREATE和DELETE代码将在一个函数中。因此,在 lambda 处理程序函数中,您将使用基本的 if-then-else 条件来为更新、创建和删除功能调用不同的代码。