我们已经部署了一些API(很少使用Node.js/Express.js开发,还有一些使用Python开发)。我们所有的API都是使用Azure容器实例部署的。我们通过邮递员建立了周期性的API监控系统.API失败的时间大约有20%是错误的:套接字挂起。我们从未在开发区域或通过浏览器访问API时遇到过这个问题。是什么原因导致这个套接字挂起问题,以及我们如何克服它?
我们的Node.js API文档设置如下:
FROM node:16
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN rm -rf .env
RUN mv production.env .env
#ENV PORT=5000
EXPOSE 5000
CMD ["npm", "run", "prod"]
Python夸脱APIs设置如下:
FROM continuumio/miniconda3
COPY . /api/
WORKDIR /api/src
RUN conda env create -f /api/environment.yml
COPY entrypoint.sh ./
RUN chmod +x ./entrypoint.sh
ENTRYPOINT ["./entrypoint.sh"]
EXPOSE 5000
entrypoint.sh
#!/bin/bash --login
set +euo pipefail
conda activate python_env_name
set -euo pipefail
exec hypercorn --bind 0.0.0.0:5000 QuartAPI:app
发布于 2022-02-15 01:39:33
在邮递员中似乎比在您的API中更有问题。假设服务器没有抛出/记录任何错误,邮递员很可能没有正确地处理响应。下面是“邮递员”中一些可能导致这一问题的原因:
请求中的
来说并不像我的经验那样。如果在发生问题时连接到VPN,请断开连接并再试一次。如果修复了它,您将需要在VPN周围创建一条特殊的路由。
。
发布于 2022-03-04 07:31:41
对我来说,我在http上失踪了。所以我用的网址是
http://localhost:5001/odata/People
当我将其更改为https时
https://localhost:5001/odata/People
事情又开始好转了。
https://stackoverflow.com/questions/71013687
复制