gpt4 book ai didi

google-cloud-platform - 谷歌云运行 : Error: Stream error in the HTTP/2 framing layer

转载 作者:行者123 更新时间:2023-12-02 00:10:10 26 4
gpt4 key购买 nike

我用 https://www.starlette.io/ 创建了一个 API , docker image python:3.7-slim-stretch 一切都在本地以及部署在 AWS ECS 上时运行良好。

但是当我尝试在 Google Cloud Run 上部署相同的应用程序时,我无法收到任何请求。我可以使用根域 / 上的浏览​​器访问服务器,但是当我尝试访问 /prediction-url 时,我收到类似 Error: Stream 的响应错误HTTP/2 框架层错误服务不可用。尝试使用 Insomnia、javascript 请求以及 curl 请求访问 API。奇怪的是,一切都在 AWS ECS 上 100% 运行,但我无法让它在 Googl Cloud Run 上运行。部署到 Google Cloud Run 时有什么具体需要考虑的吗?

请求路由定义:

@app.route("/classify-url", methods=["GET"])
@requires("authenticated")
async def classify_url(request):
img_bytes = await get_bytes(request.query_params["url"])
return await predict_image_from_bytes(img_bytes)

服务器启动命令:

if __name__ == "__main__":
if "serve" in sys.argv:
# int(os.environ.get('PORT', 8080))
uvicorn.run(app, host="0.0.0.0", port=8080, log_level="info")

码头文件:

FROM python:3.7-slim-stretch

RUN apt-get update && apt-get install -y git python3-dev gcc \
&& rm -rf /var/lib/apt/lists/*

COPY requirements.txt .

RUN pip install --upgrade -r requirements.txt

COPY . .

EXPOSE 8080
EXPOSE 8000
EXPOSE 80
ENV LISTEN_PORT=8080

# Start the server
CMD ["gunicorn", "-w 1", "-k uvicorn.workers.UvicornWorker", "-b 0.0.0.0:8080", "-t 8", "main:app"]

最佳答案

正如您在 known issues 中看到的那样, Cloud Run 完全托管不支持 HTTP 流式传输。该团队正在研究它,但目前不可用,也没有公布发布日期。

如果你想使用流式传输,你可以使用 Cloud Run on GKE,但是管理和成本是不一样的。

关于google-cloud-platform - 谷歌云运行 : Error: Stream error in the HTTP/2 framing layer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59346899/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com