GAE标准实例生存期

时间:2019-03-13 21:42:57

标签: node.js google-app-engine google-cloud-platform mongodb-atlas

要试用Google Cloud Platform和Mongodb Atlas,我注册了这两个平台,并创建了一个简单的应用程序,该应用程序托管在连接到Atlas的App Engine Standard上。

在更新后设置新的超时,它每分钟都会更新5条记录的集合,每条记录都有一个名称和last_updated字段,并使用当前日期更新last_updated字段。

此外,该应用还使用Express后端在appspot网址(以下日志中的GET)上显示了最近的更新日期。

运行约2个小时后,该容器被9个信号杀死。我想知道这是什么原因?开始2小时后?最后一个前端通话后1小时?为什么它不继续运行settimeout / express进程?

内存似乎是恒定的(请参见下面的屏幕)

此外,正如CPU日志显示的那样,大约5分钟后似乎有0个CPU,而日志显示的是完全相同的输出,直到关闭为止。那里发生了什么事?

日志: Logs

内存: Memory

CPU: CPU

1 个答案:

答案 0 :(得分:0)

对于App Engine标准,实例可以正在运行或停止。

自动缩放的服务具有一个或多个始终在运行的实例。当没有流量时,可以停止手动或基本扩展服务。您可以在app.yaml中设置缩放行为。

此链接将帮助您了解App Engine的生命周期。

Instance life cycle

此链接记录了app.yaml设置以进行缩放:

Scaling elements

具有自动缩放功能的示例app.yaml:

service: my-service
runtime: python27
api_version: 1
instance_class: F2
automatic_scaling:
  target_cpu_utilization: 0.65
  min_instances: 5
  max_instances: 100
  min_pending_latency: 30ms  # default value
  max_pending_latency: automatic
  max_concurrent_requests: 50