java - 在 AWS lambda java 中使用 Thread.sleep 是个好主意吗

标签 java amazon-web-services aws-lambda aws-serverless

我正在将 AWS Lambda 与 Java 编程语言结合使用,由于某些要求,我必须在 lambda 函数中 hibernate 2-3 秒,或者在某些情况下长达 12 秒,将 Thread.sleep() 放入其中是个好主意吗? lambda 函数,否则它会产生任何技术后果。

最佳答案

很少有情况下执行 Thread.sleep 是合理的。

  • 每隔几秒轮询一次,并检查不受代码控制的某些状态是否已更改。例如。考虑检查某处的远程进程是否已完成。
  • 您想要模拟某段代码,以便它“花费”比实际更多的时间。
  • 限制每秒执行多个操作的代码段。例如。从远程服务器请求多个资源,但限制您的请求,以免重载。

我确信还有很多更合理的理由。不要害怕让你的代码 hibernate 。确保你 sleep 是有正当理由的。还要确保您的线程模型(您确实需要在代码中 hibernate )不会导致 deadlocks

请注意,在 AWS Lambda 中运行时,您应该将 sleep 优化为尽可能少的量,因为您要为宝贵的 CPU 时间付费。

关于java - 在 AWS lambda java 中使用 Thread.sleep 是个好主意吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59160887/

相关文章:

java - 在 Titanium 中设置 Android Activity

java - 修改 IntelliJ 为 Maven 项目的 Tomcat 或 Jetty 配置的资源创建符号链接(symbolic link)

java - 为什么我在正确使用 ical4j 时会收到 ValidationException?

node.js - Amazon S3 - 编辑上传的图像

amazon-web-services - github 存储库到 AWS,静态网站的简单管道

amazon-web-services - EC2/Route53 : How Do I Point Apex Record at Load Balancer?

amazon-web-services - 现有 S3 的无服务器触发器因后缀重叠而失败

amazon-web-services - 是否可以在 AWS 中使用 lambda 任务进行弹性转储?

java - 如何将 facebook post created_time 转换为用户的时区?

java - 单核 Java 11 上的并发 IO