Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS Lambda函数的输出是什么';它是由发电机流触发的?_Amazon Web Services_Aws Lambda_Amazon Dynamodb_Amazon Dynamodb Streams - Fatal编程技术网

Amazon web services AWS Lambda函数的输出是什么';它是由发电机流触发的?

Amazon web services AWS Lambda函数的输出是什么';它是由发电机流触发的?,amazon-web-services,aws-lambda,amazon-dynamodb,amazon-dynamodb-streams,Amazon Web Services,Aws Lambda,Amazon Dynamodb,Amazon Dynamodb Streams,我正在编写一个Lambda函数来处理来自DynamoDB流的事件 上的此页显示: AWS Lambda轮询流,并在检测到新流记录时同步调用Lambda函数 为什么是同步而不是异步 特别是,处理DynamoDB流事件的Lambda函数的输出会发生什么变化?它只是被丢弃了,还是有东西真的消耗了这个值 为什么是同步而不是异步 因为它需要等待新的流记录写入DynamoDB,然后调用Lambda。这就是为什么它是同步的 特别是,Lambda函数的输出会发生什么变化 处理DynamoDB流事件?它只是被丢弃

我正在编写一个Lambda函数来处理来自DynamoDB流的事件

上的此页显示:

AWS Lambda轮询流,并在检测到新流记录时同步调用Lambda函数

为什么是同步而不是异步

特别是,处理DynamoDB流事件的Lambda函数的输出会发生什么变化?它只是被丢弃了,还是有东西真的消耗了这个值

为什么是同步而不是异步

因为它需要等待新的流记录写入DynamoDB,然后调用Lambda。这就是为什么它是同步的

特别是,Lambda函数的输出会发生什么变化 处理DynamoDB流事件?它只是被丢弃了,还是真的被丢弃了 有什么东西真的消耗了这个值


根据Lambda的工作,输出可能存储在S3中,或者作为输入传递给另一个Lamdba,或者由其他服务使用

什么决定了输出的方向?以防万一,不清楚的是,通过“输出”,我指的是Lambda函数中处理程序的返回值。你是说DynamoDB表的流事件是在写入该表之前创建的吗?我以为流事件是在写入DynamoDB之后创建的。@dsharp我想您会发现这是因为它们需要按顺序处理。对于异步Lambda调用,无法保证排序。Synchronous将检查错误和重试的负担交给了调用程序(这里正好是Lambda服务本身的一个组件),从而保留了事件的既定顺序。输出仍然被丢弃,但您可能会说它被丢弃到另一个位存储桶中。@Michael sqlbot Ok,因此它们是同步的,因为(每个碎片)排序约束,但返回值基本上被忽略。听起来对吗?@LaurenceGonsalves是的,对。