python - AWS Lambda 函数完成触发另一个 lambda 函数
问题描述
我正在尝试将 lambda 函数串在一起。第一个 lambda 函数在 30 分钟的计时器上抓取数据并将其放入 S3 存储桶中,下一个 lambda 函数检索并解析该数据并将其放入单独的 S3 存储桶中,最后一个函数对该数据执行分析并发送用户(在这种情况下是我自己)通过 pythons smtplib 模块发送结果的电子邮件。
我不想让最后两个 lambda 函数在计时器上运行,而是希望在第一个函数完成时触发第二个函数,并在第二个函数完成时触发最后一个函数。此外,删除第一个 S3 存储桶中的两个文件夹和第二个 S3 存储桶中的内容以节省内存和处理时间。
有没有办法在 AWS Web 界面中完全做到这一点,而不是重写我已经拥有的 python 代码?
解决方案
这听起来像您有一个可以通过step functions实现的用例。
您将添加一个调用了第一个 Lambda 的流,然后如果成功调用第二个 Lambda 函数,则在它们之间传递输入/输出。
您将更新您的计划操作以执行步骤函数而不是第一个 Lambda。
推荐阅读
- amazon-web-services - 通过 CLI 阻止所有对象在 S3 中的公共访问
- android - 如何解决 Flutter Activity 中 BOTTOM OVERFLOWED BY 84 PIXLES 的问题?
- python - GET请求后的Django DRF PUT请求ImageField
- matlab - 如何在 Matlab 中将 3D 路径数据绘制为条带
- angular - 如果我在订阅中多次订阅,第一次订阅中的 complete() 会等待吗?
- image - 在单元格上添加图像,使其不应由其他用户编辑,除了所有者并分配脚本以在用户单击时运行
- elasticsearch - 如何在弹性搜索中对具有复合聚合的字段进行排序
- microsoft-graph-api - 调用图形 API 通过另一个 REST 服务访问 oneDrive (office365)
- java - 如何在 PopupMenu 的下拉菜单中显示图标
- java - 春季启动rabbitmq死队列不停止异常流