因此,我们的项目使用Hangfire来动态调度任务,但请记住,我们决定取消服务器实例的自动扩展。我一直在寻找云原生无服务器解决方案,因此决定将CloudWatch Events与Lambda一起使用。后来我发现,可以创建的规则数量有一个上限(每个帐户100个),并且不会自动扩展。所以现在我被困住了,任何建议都很棒!
答案 0 :(得分:0)
根据CloudWatch Events documentation,您可以请求增加限额。
每个帐户每个区域100。您可以请求增加限额。对于 说明,请参阅AWS服务限制。
在请求增加限额之前,请检查您的规则。你可能有 多个规则,每个规则都与非常特定的事件匹配。考虑 通过在事件中使用较少的标识符来扩展其范围 CloudWatch Events中的模式。另外,一条规则可以调用多个 每次与事件匹配时定位。考虑添加更多目标 您的规则。
如果您尝试创建无服务器任务计划程序,则一种可能的方法是:
答案 1 :(得分:0)
因此,我决定按照Diego的建议进行操作,每分钟使用CloudWatch Events触发一个Lambda,该Lambda将查询DynamoDB以检查需要执行的任务。
我对从dynamoDb提取的数据有一些担心(如果执行时间超过1分钟,则重复的项目),因此决定将该Lambda的并发性设置为1。
我还担心直接从Lambda本身执行这些任务(超时和任务在长列表的末尾),所以我正在做的是将任务分别推到SQS,而另一个Lambda由SQS并行执行那些任务。到目前为止,结果看起来不错,如果有任何问题,我将继续更新此线程。