Hey Andi,

It goes something like this as far as I understand it.

Your app lives in a process. When requests come in, those requests are
handed to the app process to do what it needs to do and send a
response. When request A comes in and there are no active processes,
the app process starts up (the 7 seconds you see) in order to handle
request A. Let's say that while it is handling request A, request B,
C, D, and E come in. Because the process is busy handling A, the new
requests (B, C, D, and E) are put on a queue. There is some magic
calculation that goes on here that involves a few things. If the
calculation sees that your process can handle a request very fast, it
piles more requests on the queue, so that the queue could be B:C:D:E
because it has faith that response will happen in reasonable time. On
the other hand, if the calculation sees that your process is taking
it's sweet time, it decides to start another process (another 7
seconds you see), and then gives the next request in the queue (B) to
that process to ensure that the very last request on the queue - E
gets served in reasonable time.

After some time period when a process has no requests waiting in the
queue, it kills itself. From what I read, it takes on average 1
request per second to keep process from giving up on the world of the
living.

If you look at the appengine roadmap, "reserved instances" are there.
So pretty soon we'll be able to pay for having a process staying alive
to server requests.

I may be wrong.

Cheers,

Tristan


On Apr 26, 10:44 pm, AndiMullaraj <andimulla...@gmail.com> wrote:
> Hi Ikai,
>
> where can I get a more specific response to this issue? I find it odd
> something like this would happen in first place (my app hangs for
> about 7 seconds awaiting for the process to fire up). I tried pinging
> my app every 2 minutes hoping the process would not go to sleep ... to
> no effect.
>
> Please advise -- this is very frustrating.
>
> Andi
>
> On Apr 21, 2:33 pm, "Ikai L (Google)" <ika...@google.com> wrote:
>
>
>
>
>
> > Yep, we're rolling this out slowly with the 1.3.3 release to let developers
> > know that some requests are slow because they are startup requests.
>
> > On Wed, Apr 21, 2010 at 6:09 AM, Tristan <tristan.slomin...@gmail.com>wrote:
>
> > > Hey,
>
> > > I started seeing when a task queue starts now:
>
> > > WARNING: 200 OK
> > > This request caused a new process to be started for your application,
> > > and thus caused your application code to be loaded for the first time.
> > > This request may thus take longer and use more CPU than a typical
> > > request for your application.
>
> > > instead of this
>
> > > WARNING: 500
> > > Request was aborted after waiting too long to attempt to service your
> > > request. Most likely, this indicates that you have reached your
> > > simultaneous dynamic request limit. This is almost always due to
> > > excessively high latency in your app. Please see
> > >http://code.google.com/appengine/docs/quotas.htmlformore details.
>
> > > I like it. Is this the expected behavior from now on?
>
> > > Tristan
>
> > > --
> > > You received this message because you are subscribed to the Google Groups
> > > "Google App Engine for Java" group.
> > > To post to this group, send email to
> > > google-appengine-j...@googlegroups.com.
> > > To unsubscribe from this group, send email to
> > > google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2B
> > >  unsubscr...@googlegroups.com>
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/google-appengine-java?hl=en.
>
> > --
> > Ikai Lan
> > Developer Relations, Google App Engine
> > Twitter:http://twitter.com/ikai
> > Delicious:http://delicious.com/ikailan
>
> > ----------------
> > Google App Engine links:
> > Blog:http://googleappengine.blogspot.com
> > Twitter:http://twitter.com/app_engine
> > Reddit:http://www.reddit.com/r/appengine
>
> > --
> > You received this message because you are subscribed to the Google Groups 
> > "Google App Engine for Java" group.
> > To post to this group, send email to google-appengine-j...@googlegroups.com.
> > To unsubscribe from this group, send email to 
> > google-appengine-java+unsubscr...@googlegroups.com.
> > For more options, visit this group 
> > athttp://groups.google.com/group/google-appengine-java?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine for Java" group.
> To post to this group, send email to google-appengine-j...@googlegroups.com.
> To unsubscribe from this group, send email to 
> google-appengine-java+unsubscr...@googlegroups.com.
> For more options, visit this group 
> athttp://groups.google.com/group/google-appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-j...@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