【发布时间】:2020-03-28 08:42:12
【问题描述】:
我正在使用带有 Java 编程语言的 AWS Lambda,由于某些要求,我必须在我的 lambda 函数中休眠 2-3 秒,或者在某些情况下最多 12 秒,将 Thread.sleep() 放入lambda 函数,否则它会产生任何技术后果。
【问题讨论】:
-
你能多加一点上下文吗?或者分享一下代码?
-
请注意,AWS lambda 确实有一个超时,您可能会为您的用例牢记这一点。如果在您的代码完成处理之前达到超时,则函数终止。
-
您还在等什么?该事件的结束本身是否不会触发 Lambda 函数(可能通过 SNS 或 SQS 间接触发)?
-
在任何异步代码中使用
sleep是个坏主意,到底为什么要这样做?解释为什么需要这样做。 -
@KarolDowbecki,我在基于“电信”的应用程序中遇到了问题。在我向用户拨打自动电话的情况下,他可能会或可能不会在给定时间或任何其他情况下接听电话,例如用户忙等,如果用户忙或没有,我不会立即从电信系统获得响应-回答。所以,我想在睡眠 20 秒后再试一次。我的系统中的最大重试次数只是一种情况,这就是为什么我会这样做,如果您有更好的想法,请告诉我。
标签: java amazon-web-services aws-lambda aws-serverless