如何在不使用不可靠的城市时钟的情况下安排重复的 lambda 执行

How to schedule recurring lambda executions without using unreliable town clock

我看到社区支持在重复时间内触发 AWS lambda 函数的方式,但是是否有这种触发器的官方 AWS 实现?

我建议使用 Lambda 订阅 SNS Topic,然后在您的服务器上使用一个简单的脚本 运行 向 SNS Topic 发送一条消息,触发所有Lambda 个功能已订阅。您的脚本可以由 cron 作业执行。

Ruby 中的类似内容:

#!/usr/bin/env ruby
require 'aws-sdk'

topic = 'arn:aws:sns:<region>:<account id>:<SNS Topic id>'

sns = Aws::SNS::Client.new(
    access_key_id: '<key>',
    secret_access_key: '<secret>',
    region: '<SNS Topic region>'
)

r = sns.publish({
    topic_arn: topic,
    message: 'execute'
})

puts r.inspect

亚马逊宣布 AWS Lambda 现在支持计划函数:

https://aws.amazon.com/blogs/aws/aws-lambda-update-python-vpc-increased-function-duration-scheduling-and-more/

您可以在 AWS 控制台中进行设置。

事实上,您问题中提到的不可靠城镇时钟本身现在由后端的 AWS Lambda 计划函数提供支持。

https://alestic.com/2015/10/townclock-aws-lambda-scheduled-functions-cron/