In my previous post,

http://groups.google.com/group/google-appengine/browse_thread/thread/c5ab4ec85c5b5525/b8f97af3ddcdcaa1?lnk=gst&q=charming#b8f97af3ddcdcaa1

I said "after I rewrote the custom warm-up servlet, I found it works
like a charming".
Yes, the warm-up cases really becomes fewer, but now I find it still
exits.

After some research, I found the behavior of the instance scheduler is
uncertain.

Here is a case: one resident instance is idle, a new request coming,
the idle resident instance will handle it. At the same time, another
new request coming, the scheduler wait pending latency time, the idle
instance is still not free, so a new instance is started, which needs
20-30 seconds to warmup. After ***N seconds***, the scheduler found
the new instance is still not warmed-up and found the resident
instance is free now, so the scheduler let the resident instance also
hand the second new request.

The implementation is not bad, but the strange thing is ***N
seconds*** varies from 1 second to 30 seconds.
That is why some warm-up requests will be still encountered.

btw, I found affer I rewrote the custom warm-up servlet, 99% percent
cases of the effort to create a new instance are useless. The new
created instance will be shutdown without handling any user requests.

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

Reply via email to