1

我需要使用Amazon工具构建“任务调度程序”。主要问题是我需要执行一次任务,并且延迟很大(可能是几个小时或几周)。AWS Lambda。延迟调用

我试图研究如何使用CloudWatch和Lambda函数来构建它。据我所知 - 我需要使用单独的规则来执行一次超时。 但AWS允许我只有100个规则/帐户。

也许我会错误的方式和这个工具不适合我的任务。

另外我尝试过SQS,但它不允许我设置超过15分钟的超时时间。最简单的方法 - 使用自己的crcoservice与crone,但我希望它有可能在云端)

可能有人有同样的问题,可以与我分享对此的实施思路?

+0

您是否试图在不使用EC2实例的情况下完成此操作? –

回答

0

CloudWatch规则应该可以工作,并且您可以为事件日程安排使用cron表达式。

+0

是的。 ClouWatch的作品。但AWS将限制规定为100条。 在我的情况下,我可以采取10 000延迟事件。 –

+0

您可以[请求限制增加](http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)。 “在请求增加限制之前,请检查您的规则,您可能有多个规则,每个规则都与非常特定的事件相匹配,请考虑通过在事件和事件模式中使用较少的标识符来扩大其范围,另外,规则可以调用多个目标每次匹配一个事件,考虑在你的规则中增加更多的目标。“ – clonq

+0

如果你有10,000个预定事件,你应该按照@ tom的建议使用一个专用的调度器。 –

1

我建议您使用disque来延迟邮件/重试,并且apscheduler(python)用于安排您的任务。

也可以将disque用作群集。

根据您的使用情况,您可以将这两个放在ec2-machine中。

让我知道,如果你需要任何帮助!