我已经启用了我的表的DynamoDB流,并且有两个lambda与它相关联。这两个触发器都是在DynamoDB表通过dynamo触发器发生更改时发生的。
问题:和Lambda的两个RDS表相应地插入数据。就像Lambda-1插入表1和Lambda-2插入表-2。表-一个主键是表二中的外键.
因此,当两个lambda触发lambda时--两个首先完成执行,因为它显示的是外键约束错误,因为lambda-2试图将数据插入表-两个,但在那个时间表中-一个还没有主键。
那么,我的问题是,有没有办法命令通过DynamoDB触发lambda?
发布于 2020-12-23 13:14:01
AWS阶跃函数是编排Lambda函数的完美AWS特性,并专门为这类工作流构建。它确保后续函数的顺序执行,还提供了处理错误的方法,例如,在某些函数失败时回滚和保持一致性。
下面是一步一步的演练:使用AWS Step函数和AWS创建无服务器工作流
尽管如此,如果您的需要在数据库中维护引用完整性,那么使用一个Lambda函数将两个记录的创建包装成一个事务可能要简单得多。在这种情况下,数据库本身将负责维护一致性。如果它应该是一个原子写入操作,那么没有理由将它分为两个函数。
发布于 2020-12-23 15:59:04
在内部实现了类似的东西。但是,我们没有通过AWS Step函数增加复杂性,而是使用了AWS Lambda目的地。有4种类型的目的地支持
节省了大量围绕服务的移动性,而且集成非常容易实现。
https://stackoverflow.com/questions/65423950
复制相似问题