如果 AWS Cognito 触发器多次失败,如何重试将用户发送到数据库?
How to retry sending users to the database if AWS Cognito trigger failed multiple times?
基本上我想做的是将认知用户存储在数据库中,因此我将添加一个“Post 确认触发器”来执行此操作,但不幸的是,如果数据库关闭,该触发器可能会失败。
根据 docs Amazon Cognito 重试调用,在 3 次尝试不成功后,函数超时。
所以我的问题是,如果 3 次调用全部失败,如何重新尝试将用户保存到数据库?
如果您有一个不可靠或容易过载的数据库,您可以考虑解耦您的架构,方法是将消息放入队列(例如使用 SQS)并使用具有高重试限制和死机的 AWS Lambda 处理它们信队列设置。
虽然这种类型的设置需要考虑的一件事是它是异步的,因此如果您的应用程序依赖于 Post 确认触发器在继续之前完成(即在其标准同步设置中),您可能运行 进入竞争条件。
基本上我想做的是将认知用户存储在数据库中,因此我将添加一个“Post 确认触发器”来执行此操作,但不幸的是,如果数据库关闭,该触发器可能会失败。
根据 docs Amazon Cognito 重试调用,在 3 次尝试不成功后,函数超时。
所以我的问题是,如果 3 次调用全部失败,如何重新尝试将用户保存到数据库?
如果您有一个不可靠或容易过载的数据库,您可以考虑解耦您的架构,方法是将消息放入队列(例如使用 SQS)并使用具有高重试限制和死机的 AWS Lambda 处理它们信队列设置。
虽然这种类型的设置需要考虑的一件事是它是异步的,因此如果您的应用程序依赖于 Post 确认触发器在继续之前完成(即在其标准同步设置中),您可能运行 进入竞争条件。