Hi Jeff,

Check this post :  
https://groups.google.com/forum/#!msg/google-appengine/3t5muVhXajg/SSFU-udjIhwJ
 

Setting "Idle instances" to automatic, as Johan Euphrosine suggested, seems 
to have solved the problem, at least temporarily (I was at 1 minimum and 1 
maximum before).

I'm just a bit scared now to get over my daily quotas.

François

On Tuesday, February 28, 2012 5:34:36 PM UTC+1, Jeff Schnitzer wrote:
>
> There's been a lot of discussion of the scheduler behavior in Pythonland, 
> but not much about it's "eccentricities" in Javaland.
>
> I have a threadsafe=true Java app.  Let's say every request completes in 
> exactly 1s.  Settings are:  idle instances min 1 max 1, latency auto/auto. 
>    Here is what I expect:
>
>  * Instance1 starts up and becomes permanently resident
>  * Instance1 serves concurrent requests up to some arbitrary CPU capcity
>  * When Instance1 exceeds capacity:
>      * Instance2 starts warming up
>      * All requests remain in the pending queue for Instance1, getting 
> processed at 1/s * concurrency
>      * Instance2 is ready and starts processing new requests, sharing the 
> load with Instance1
>
> What I actually see (as far as I can determine):
>
>  * Instance1 starts up and becomes permanently resident
>  * Instance1 supports almost no concurrency.  At most it's 2.  (no, my app 
> is not particularly compute intensive)
>  * A new request comes in which for some reason can't be handled by 
> Instance1:
>      * Instance2 starts warming up
>      * The new request is blocked on Instance2's pending queue, waiting 
> 10-20s for Instance2 to be ready
>      * In the mean time, Instance1 is actually idle
>  * Another new request comes in and starts up Instance3
>      * Possibly this is while Instance2 is warming up
>      * AFAICT, Instance1 is taking a coffee break
>
> The net result is that I have an idle website with 1 user (me) clicking 
> around and I've already gotten multiple 20s pauses and three instances. 
>  Something is seriously wrong here.  Whether or not it's rational to have 
> so many instances started, pending requests shouldn't be shunted to 
> non-warmed-up servers, right?
>
> I've tried upping the min latency to a high value to see if this improves 
> the situation.  If this works... shouldn't min latency *always* be as high 
> as the startup time for an instance?
>
> I know it's been said before, but it needs to be said again... the 
> guidance for scheduler configuration is really, really inadequate.
>
> Jeff
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-appengine-java/-/zULJyO6VtHwJ.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to