Reputation: 733
I have a deployed a Golang app to Google Cloud Platform's App Engine Standard environment.
My app.yaml included the following lines:
automatic_scaling:
min_idle_instances: 0
max_idle_instances: 0
min_pending_latency: automatic
max_pending_latency: automatic
min_instances: 0
max_instances: 2
My intention was that the app should scale down to 0 instances when idle and spawn up to 2 instances to handle incoming requests.
After calling the service I noticed that it never scales down to 0 instances.
I opened the service configuration in the web console and found the following:
runtime: go
api_version: go1
env: standard
threadsafe: true
instance_class: F1
handlers:
- url: /penguin
script: _go_app
automatic_scaling:
min_idle_instances: automatic
max_idle_instances: automatic
min_pending_latency: automatic
max_pending_latency: automatic
max_instances: 2
Is it possible to scale App Engine Standard services down to 0 instances? What should that look like in the yaml?
Upvotes: 8
Views: 5643
Reputation: 1231
App Engine standard environment scales down to 0 instance by default so you shouldn't have to specify it in your app.yaml. You only need to specify the values you want to change in the automatic scaling. Refer to the documentation for a list of default scaling values under automatic_scaling
.
After deploying, you should only have at most 1 instances showing up, but you will be billed for usage which is 0.
(Also note that this does not apply to a App Engine Flexible environment)
Upvotes: 8