我当前的AWS Lambda函数调用了另一个AWS Lambda函数,但我希望确保调用成功。在研究了concurrent execution limits for AWS Lambda之后,我试图弄清楚如果达到并发限制会发生什么,并且我试图从另一个Lambda调用Lambda。目前,我通过将消息放在SNS中来解决这个问题,但我更喜欢直接调用Lambda,避免间接调用。
发布于 2017-02-07 22:17:12
处理并发限制的最好方法是使用Kinesis流,而不是SNS。分片的数量将限制调用的lambda的数量。如果它与你相关,你可以一次接收几条消息,这是你不能用SNS做的,这可能会导致并发限制。
发布于 2016-02-25 06:17:25
你能详细解释一下吗?我不确定我明白你想要达到什么目的。
Lambda限制可以在亚马逊网络服务控制台/ EC2页面下查看,左上角有名为限制的菜单项,在那里您应该看到限制。当您达到限制时,lambda将停止被调用,如果我没记错的话,您将在日志中看到一个错误,说明正在达到限制。
发布于 2016-04-28 15:32:25
Q:如果我的帐户超过并发执行的默认限制,会发生什么?
超过限制时,同步调用的AWS Lambda函数将返回限制错误(429错误代码)。异步调用的Lambda函数可以在大约15-30分钟内吸收合理的流量突发,之后传入的事件将被拒绝为节流。在调用Lambda函数以响应亚马逊S3事件的情况下,被AWS Lambda拒绝的事件可能会被S3保留并重试24小时。亚马逊Kinesis streams和亚马逊DynamoDB streams中的事件将一直重试,直到Lambda函数成功或数据过期。亚马逊Kinesis和亚马逊DynamoDB Streams可将数据保留24小时。
在AWS控制台中,您始终可以为AWS Lambda并发执行创建服务限制增加,而不需要额外的成本。This answer对此进行了更详细的解释。
https://stackoverflow.com/questions/35613870
复制相似问题