1

I want to know if there is any possible downtime in GAE's method of "silent" deployments. I'm using

inbound_services:
- warmup

and deploying apps with -no-promote --no-stop-previous-version flags before going to App Engine and migrating traffic from old to new version.

Is there still a possibility of a client noticing there is a deployment going on?

1 Answer 1

1

Yes, there is still room for a deployment to impact customer experience - you should migrate traffic to the new version gradually, not all at once.

From this section in Designing for Scale:

Use traffic splitting when switching to a new default version

A high traffic application may get errors or higher latency when updating to a new version in the following scenarios:

  • Complete update of a new default version
  • Set the default version

Once the update is complete, App Engine will send requests to the new version. However, the new version may take some time to spin up enough instances to handle all traffic. During this period, requests can potentially sit on the pending queue and may time out.

Therefore, in order to minimize latency and errors, we recommend that customers use traffic splitting to move traffic gradually to a new version before making it the default.

An application may serve requests from both versions while you are moving traffic to the new version. In most cases, this will not cause any problems. However, if you have an incompatibility in the cached objects used by an application then you will need to ensure that users go to the same version of an application during their session. You will need to code this into your application logic.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .