Hello! I have a python app running on Google App Engine. Since it isn't regulary trafficked, every time a new user visits the site 15 minutes after the last instance was started up (or however long they stay active since the last request), it takes a long time (4-5 seconds) for a new instance to start up and serve the site. Subsequent page requests while the instance is active is around 30ms.
From what I understand, setting a minimum number of idle instances can alleviate this startup time. So I set the minimum idle instances to 1 in the App Engine dashboard, as well as added
inboud_services:
- warmup
to my app.yaml file. However, there is still a 4-5 second startup time when a new visitor accesses the site.
When I checked the "Instances" page on the App Engine dashboard, it showed the resident instance as well as a dynamic instance, but all the requests were going through the dynamic instance. Once I shutdown the dynamic instance, all new requests went through the resident instance, as I expected. BUT, when someone accessed the site after 15 minutes of inactivity (the time it takes for a dynamic instance to shutdown and need to be restarted), the next request went through a new dynamic instance which was spun up, again taking 4-5 seconds, instead of using the resident instance which was already running.
I tend to think that this isn't what's supposed to happen. Is there something that I'm doing incorrectly? I really appreciate the help. Thanks!