amazon-web-services - AWS 上的无服务器任务调度
问题描述
因此,我们的项目使用 Hangfire 来动态调度任务,但要记住服务器实例的自动缩放,我们决定取消它。我一直在寻找云原生无服务器解决方案,并决定将 CloudWatch Events 与 Lambda 结合使用。后来我发现,可以创建的规则数量有一个上限(每个帐户 100 个),并且不会自动扩展。所以现在我被困住了,任何建议都会很棒!
解决方案
所以我决定按照 Diego 的建议去做,每分钟使用 CloudWatch Events 触发一个 Lambda,它会查询 DynamoDB 以检查需要执行的任务。
我对将从 dynamoDb 获取的数据有些担心(如果执行时间超过 1 分钟,则会出现重复项),因此决定将该 Lambda 的并发设置为 1。
对于直接从 Lambda 本身执行这些任务(超时和任务在长列表末尾),我也有一些担忧,所以我正在做的是将任务分别推送到 SQS,另一个 Lambda 由 SQS 触发执行这些任务并行。到目前为止结果看起来不错,如果有任何事情发生,我会继续更新这个线程。
推荐阅读
- php - 合并远程存储的 PDF Laravel
- laravel - 如何在刀片 laravel 8 中获取选择输入的旧值?
- javascript - 使用 i18n 从 svelte store 中导出一个简单的数据对象
- reactjs - 如何改进过滤器 ReactJS
- python - 在 python 中,将函数用作类的属性的正确语法是什么?
- amazon-web-services - 具有动态环境变量的 Elastic Beanstalk app.config option_settings 不起作用
- python - 从 pandas Dataframe 列创建列表的高效/Pythonic 方式
- struct - C99 结构共享成员访问
- jquery - jQuery 弹出窗口仅在 foreach 循环中显示一次
- android - Android 房间数据库 IN Caluse 未按预期工作