API + Lambda 有 20% 的几率出现 #503 错误

0

【以下的问题经过翻译处理】 运行AWS Step Functions访问一个AWS HttpApi调用lambda函数,以使用一个大小约为3GB的docker容器。但20%的时间会出现#503错误,其余时间结果符合预期。我不认为这是容器的预热问题。API和lambda的日志(非容器和容器)都没有显示任何问题。我已经将AWS Step Functions设置最长的超时时间、设置lambda的重试次数、设置lambda的内存(10GB)。我还尝试了在AWS Step Functions中ping容器并等待30秒,但不起作用。

*编辑:应该提到API并发数是最大的(我认为对于HttpApis是自动的)。

任何建议都将不胜感激。由于成本和相对复杂性问题,我不想使用ECS fargate。谢谢!

1 回答
0

【以下的回答经过翻译处理】 虽然这不是对你问题的直接回答,但你是否考虑过使用AppRunner呢?它可以运行你的Docker服务,并且当没有请求时会进入休眠状态,节省你的费用。所以它与Lambda的工作原理非常相似,如果你在使用Docker,就不会那么复杂了。我发现它很容易设置和非常有用。AWS AppRunner

AWS App Runner是一项完全管理的服务,使开发人员能够快速部署容器化的Web应用程序和API,规模化部署而不需要任何先前的基础设施使用经验。从你的源代码或一个容器镜像开始。App Runner自动构建和部署Web应用程序,负载均衡对流量进行加密,并根据你的流量需求进行扩展,使你的服务易于与其他在Amazon VPC中运行的AWS服务和应用程序进行通信。使用App Runner,你无需考虑服务器或扩展方式,你有更多时间专注于你的应用程序。

profile picture
专家
已回答 3 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则