You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS ECS Fargate部署FastAPI项目频发404后返回503故障咨询

故障原因
  • 你看到的GET / HTTP/1.1 404请求是ECS关联的健康检查逻辑主动触发的:不管是配置的应用负载均衡(ALB)健康检查,还是ECS服务本身的容器健康检查,默认都会使用根路径/作为检查地址。但你的FastAPI项目没有为根路径/实现GET接口,因此健康检查请求直接返回404。
  • 健康检查失败触发任务下线:当健康检查连续失败次数达到预设阈值后,ECS会判定当前Fargate任务不健康,主动关停任务并尝试启动新任务。在没有正常运行的健康任务承接流量时,负载均衡就会对外返回503服务不可用状态码。
  • 低概率触发原因:你也可以额外排查两个配置:一是FastAPI服务是否监听0.0.0.0地址,如果仅监听本地回环127.0.0.1,会导致外部健康检查请求无法到达服务;二是Fargate任务关联的安全组是否开放了服务监听端口的入站权限给健康检查的来源(ALB安全组或者VPC内部网段)。
修复方案

你可以任选以下一种方案解决:

  • 修改健康检查配置:将健康检查路径改为你项目中已实现的可用GET接口路径,或者直接使用FastAPI自带的/docs路径,同时将健康检查预期响应码设置为200即可。
  • 新增根路径健康检查接口:直接在FastAPI代码中添加根路径的GET接口,参考代码如下:
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def health_check():
    return {"code": 0, "msg": "success"}

内容的提问来源于stack exchange,提问作者Yagiz Turkmen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 08:57:02