【发布时间】:2020-07-15 00:42:41
【问题描述】:
我在 GAE 上托管一个应用程序,并希望在没有流量时启用自动缩减到 0 个实例。我认为指定min_instances: 0 会允许这种情况发生。我还包括了文档中推荐的warmup 流程。
我早上向应用程序发送了一个请求,但没有再次触摸它,但它仍然花费了 10 多个实例小时。
谁能告诉我如何在标准环境中启用缩减到 0 实例?
我还要注意,我正在使用其他一些 GCP 服务,包括 pubsub 和 secretmanager。这些会累积 F 级实例小时数吗?
service: default
runtime: python37
instance_class: F4_1G
automatic_scaling:
target_cpu_utilization: 0.80
min_instances: 0 # should enables aut-scaling down to 0 instances when no traffic
max_instances: 2
max_pending_latency: 2000ms
min_pending_latency: 30ms # default
entrypoint: python -m api.app
handlers:
- url: /home
script: auto
inbound_services:
- warmup # sends GET request to application's /_ah/warmup endpoint
【问题讨论】:
-
只是为了确认一下,您还向您的应用添加了
/_ah/warmup路由,对吗? -
我做到了,是的。它只返回 200 OK
-
实例是空闲的还是活动的?另外,您确定应用程序正确终止并且不会继续在后台做一些额外的工作吗?
-
闲置,我想。应用程序没有流量,也没有流量离开。实例的
availability是“动态的”。我没想过要验证所有后台任务。嗯,我接下来检查一下。谢谢。 -
确实有一个子进程并不总是被正确杀死。似乎上面的 YML 对于自动缩小到 0 实例是可行的。谢谢!
标签: python google-app-engine google-cloud-platform