lambda - AWS Lambda 可以运行多个特定的 cron 作业吗?

标签 lambda cron aws-lambda

我有点困惑这是否是使用 cron jobs/AWS Lambda 的正确方法。假设我有一个应用程序,可以让用户安排发送电子邮件和短信,我可以在函数 sendMessage 中执行此操作。每个 sendMessage 请求都会有一个特定的发送时间,而您只想发送一条消息/调用该函数,所以我觉得在 Lambda 上设置一个 cron 任务来每秒甚至每分钟检查一次,效率很低。要发送的新消息。是否可以避免类似的重复轮询,而只需向 Lambda 发送任务以在特定时间执行函数? Lmk 如果需要澄清:)

编辑:另外,我意识到这不是一个特定于代码的问题,但我尝试询问软件推荐,他们没有 cron 标签,所以我想这可能不是正确的地方

最佳答案

是的,运行 Cloudwatch 事件 (CRON) 的效率非常低,因为即使没有要发送的任务,它也会每 X 分钟调用一次 Lambda。而且,您无法为每条要发送的消息创建新的 Cloudwatch 规则,因为 Lambda 策略可能会变得太长。

我建议您查看Step Functions ,通过使用 Wait State等待消息需要发送的确切时间戳,然后发送任务状态(调用 Lambda 或直接发送到 SNS)。

关于lambda - AWS Lambda 可以运行多个特定的 cron 作业吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53905701/

相关文章:

clojure - (或者更多)Clojure 后台进程

amazon-web-services - 如何在 Lambda 中获取原始正文字符串(API 网关 Lambda 代理)

mongodb - AppSync 中的 S3Object GraphQL 类型与 Lambda 数据源?

python - 找出运行 lambda 函数的 IP

python - 复杂的列表理解与 Python 中的许多循环

c# - 在这个基本的 Contains<>() 扩展方法和 Lambda 表达式方面需要帮助

c# - 传递 Func<TSource, TKey> keySelector 错误

ruby-on-rails - 如何在不加载整个rails环境的情况下将作业排队到ActiveJob?

c++ - C++ 中的线程 : cannot convert argument 1 from 'const std::ofstream' to 'std::ofstream &'

linux - ffmpeg 出现奇怪的 X 服务器错误