我在 AWS Fargate 上使用 Python 3.10.1 和应用程序负载均衡器部署了 FastAPI 0.81.0 + uvicorn 0.18.3。服务器在我的本地 Docker 中无限期地运行(如预期),但是在 AWS 上,应用程序总是在 1-2 分钟后关闭。
这是 Docker 中的 uvicorn 调用:
CMD ["uvicorn", "--host", "0.0.0.0", "--port", "8000", "--log-level", "trace", "app.main:app"]
Run Code Online (Sandbox Code Playgroud)
我的 FastAPI 应用程序如下所示:
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
app = FastAPI()
app = FastAPI()
origins = [
"*"
]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/")
async def root():
return {"Hello": "World"}
Run Code Online (Sandbox Code Playgroud)
这可能与负载均衡器有关,因为我的 Fargate 服务的 RAM 使用率并不太高:
通常的怀疑似乎是通过 TCP 而不是 HTTP 进行运行状况检查,但是据我所知,Fargate …
amazon-web-services aws-fargate aws-application-load-balancer fastapi uvicorn