繁体   English   中英

AWS Lambda Java函数多次调用

AWS Lambda Java function invoked multiple times

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有一个AWS Lambda函数,我用Java编写(好吧,它实际上是用Clojure编写的),每次运行它时都会被调用3次。

我的函数在超时(设置为最多5分钟)内成功运行。 当我在控制台中测试函数时,它返回一个我可以看到输出的字符串。

我在网上看到过一些关于不得不调用一些Context成功/完成函数但在Java SDK中看不到的东西(似乎只适用于Node?)。

我错过了什么吗?

当我在控制台中单击测试(它只运行一次)但在通过CloudWatch Trigger触发或通过AWS SDK运行时确实发生这种情况。

谢谢,

多诺万

更新:道歉,只有通过SDK和CLI通过触发器运行时才会发生这种情况,所以可能在我正在进行的通话中有一些超时。

1 个回复

对于其他任何人的未来参考,问题是SDK和CLI达到一分钟的读取超时,然后重试请求。 我手动将其设置为5分钟以匹配我的AWS Lambda超时。

这可以通过添加--cli-read-timeout int在CLI中完成,其中int是您想要的超时(或者只是--cli-read-timeout 0 ,它会完全禁用超时)。

在Java SDK中,可以通过在ClientConfiguration对象上调用setSocketTimeout(int socketTimeout)来完成

在使用Amazonica的Clojure中,将:client-config {:socket-timeout xxx}到您的凭据映射中。

2 如果发生故障,Lambda函数将被多次调用

我有一个由API网关调用的lambda函数。 我遇到了一种情况,如果我的lambda遇到请求时遇到异常,则抛出该异常,并且可以在云监视日志中看到该异常。 修复请求后,如果我将请求重新发送到触发Lambda的API网关,我仍然可以看到旧日志,即带有更新时间戳的错误日志。 API网关是再次 ...

4 AWS Lambda Java功能成功但超时

我创建了一个基本的AWS Lambda java函数,将xml消息转换为json。 该功能是从S3事件触发的(消息已转换并放入不同的S3存储桶中)。 看来成功了,我可以在cloudwatch中看到这些步骤,并且转换后的消息在S3目标存储桶中。 但是,我在云监视日志中看到超时警告(将超时设置 ...

5 Lambda在s3上传中被多次调用

我对调整图像大小的Lambda函数有问题。 该脚本是在s3中的ObjectCreated事件上触发的,但是当我刷新s3存储桶时,所有图像(使用lambda函数创建)都具有更改的“上次修改时间”列(显示当前时间),我猜测是Lambda会重新创建它们。 Lambda具有事件类型为S3的事件触 ...

10 aws lambda 函数为单个事件多次触发

我正在使用 aws lambda 函数将存储桶中上传的 wav 文件转换为 mp3 格式,然后将文件移动到另一个存储桶。 它工作正常。 但是触发有问题。 当我上传小 wav 文件时,lambda 函数被调用一次。 但是当我上传一个大尺寸的 wav 文件时,这个功能会被多次触发。 我用谷歌搜索了这个 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM