node.js - 谷歌应用程序引擎如何控制实例nodejs的数量

标签 node.js google-app-engine app.yaml

我正在使用带有nodejs的谷歌应用程序引擎。
我想限制应用程序引擎使用的实例数量。 在使用 gcloud cli 部署之前我已经尝试过 app.yaml 但我认为它不起作用......
我已经设置了 app.yaml 文件,如下所示

runtime: nodejs
vm: true
automatic_scaling:
  min_num_instances: 1
  max_num_instances: 3
  cool_down_period_sec: 120 # default value
  cpu_utilization:
    target_utilization: 0.7

但此时仍使用 8 个实例。
如何减少实例数量并控制它们?

运行gcloud应用版本列表后,

SERVICE  VERSION          TRAFFIC_SPLIT  LAST_DEPLOYED              SERVING_STATUS
default  20160811t015921  0.00           2016-08-11T02:03:24+09:00  SERVING
default  20160811t022251  0.00           2016-08-11T02:26:20+09:00  SERVING
default  20160811t023404  0.00           2016-08-11T02:36:45+09:00  STOPPED
default  20160811t031525  0.00           2016-08-11T03:17:48+09:00  STOPPED
default  20160811t053241  0.00           2016-08-11T05:35:19+09:00  STOPPED
default  20160817t191913  0.00           2016-08-17T19:21:46+09:00  STOPPED
default  20160817t220352  0.00           2016-08-17T22:06:17+09:00  STOPPED
default  20160818t171126  0.00           2016-08-18T17:14:07+09:00  STOPPED
default  20160820t000714  0.00           2016-08-20T00:10:16+09:00  STOPPED
default  20160820t033731  0.00           2016-08-20T03:39:45+09:00  STOPPED
default  20160821t023159  0.00           2016-08-21T02:34:05+09:00  STOPPED
default  20160821t025235  1.00           2016-08-21T02:55:13+09:00  SERVING

运行gcloud应用程序实例列表后,

SERVICE  VERSION          ID  VM_STATUS  DEBUG_MODE
default  20160811t015921  0   RUNNING
default  20160811t015921  1   RUNNING
default  20160811t022251  0   RUNNING
default  20160811t022251  1   RUNNING
default  20160811t022251  2   RUNNING
default  20160811t022251  3   RUNNING
default  20160811t022251  4   RUNNING
default  20160821t025235  0   RUNNING    YES

出来了。

最佳答案

根据命令的输出,您的应用程序似乎正在运行多个版本。每个版本都会根据负载启动 (n) 个实例,即使它们没有接收流量

看起来 20160821t025235 版本是您想要继续运行的版本。尝试这样做:

gcloud app versions stop 20160811t015921 20160811t022251

如果您这样做,它应该会停止其他版本。

关于node.js - 谷歌应用程序引擎如何控制实例nodejs的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39148398/

相关文章:

javascript - node.js,setTimeout回调方法和 "this"

node.js - google api 的刷新 token 在 nodejs 中无法正常工作

google-app-engine - 将基本的 Angular 2 应用程序部署到 Google App Engine

php - App Engine 无法猜测 PHP 文件的 mimetype

macos - 如何测试 app.yaml skip_files 正则表达式是否与 App Engine 一起正常工作?

node.js - Socket.io 房间基于/链接

ios - 升级到 Cordova 4.0.0 导致 iOS 构建失败,代码为 65

java - 在 Google Cloud App Engine 上构建 Spring Boot 应用程序的触发器

python - 将 sqlalchemy 库添加到 pycharm 中的谷歌应用程序引擎

python - 循环并创建对象数组