【发布时间】:2021-04-25 04:41:47
【问题描述】:
我在 NodeJS 中构建了 4 个 API 端点,并使用应用程序的 docker 映像部署在 GCP Cloud 中,如下所示:
我的应用程序,访问单独的 API,返回响应并将数据保存在 Cloud SQL 中。
FROM node:12
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install --only=production
# Copy local code to the container image.
COPY . ./
# Run the web service on container startup.
CMD [ "node", "app.js" ]
1 API 大约需要 1 分钟 来返回响应,当我从 Postman 尝试并点击云运行 URL 时,我得到了成功的响应
其他 3 个 API 分别需要 2 分钟和其他 20 分钟才能返回响应,直到那时我从 Cloud run 收到错误
503 Service Unavailable
takes: 2 m 1.02 s
478 B
下面是给出的配置:
Memory allocated: 8 GB
CPU allocated: 4
Maximum request per container: 20
Request timeout: 3600 seconds
NOTE: I am only hitting one request at a time
可能是什么问题? 我增加了并发性,但这没有用。 对于我在 Cloud Function 服务中的应用程序将无法工作,因为超时为 9 分钟。
我可以在 GCP 中使用哪种服务来完成此类工作?
【问题讨论】:
-
503 听起来像是崩溃了。你确定你没有达到最大内存吗?您在 Cloud Logging 中有其他日志跟踪吗?您是否有其他应用程序超时(例如,当您建立数据库连接时,超时可能会触发未捕获的异常,从而导致崩溃)?
标签: node.js google-cloud-platform google-cloud-run