Hi

You should never depend on any specific instance hanging around just
the same
as you cannot depend on anything in memcache hanging around.

Rgds

T

On Feb 13, 12:29 pm, Charles <char...@whoischarles.com> wrote:
> Hi Brandon,
>
> Thanks for the reply.  Just from a bit more research, this seems to be
> related to loading requests (http://code.google.com/appengine/kb/
> java.html#What_Is_A_Loading_Request) and their frequency.  From the
> FAQ, it seems like with apps with minimal traffic, or test traffic,
> VMs seem to be recycled during inactivity.  When subsequent requests
> hit your app after your VM has been handed off, GAE has to spin up a
> new JVM (a loading request) which re-initializes the entire context
> (and also eats up significant CPU time).  Anyways, kinda sucks that
> this is how it works, but I can understand why they'd want to do
> that.  And, this only really affects apps in testing or production
> apps with little traffic.  When we get real traffic, *hopefully* this
> becomes a non-issue.
>
> Also, it looks like they're playing around with the idea of being able
> to pay to reserve a dedicated JVM (http://code.google.com/appengine/kb/
> java.html#Can_I_Pay_To_Reserve_My_JVM).  This would be a good solution
> as well.
>
> Charles
>
> On Feb 12, 12:31 pm, Brandon Thomson <gra...@gmail.com> wrote:
>
> > Charles, the app instance can be unloaded at any time and a new one
> > will initialize to handle the next incoming request. there can be up
> > to 30 at once. it is by design, not an error.
>
> > On Feb 12, 12:20 am, Charles <char...@whoischarles.com> wrote:
>
> > > Hi all,
>
> > > I've created a very simple application as a test for a bigger
> > > application I'm thinking of building on GAE.  Right now, it mostly
> > > contains only two servlets and a single cron job.  One servlet is
> > > loaded on init (and logs an init message), and the other one is called
> > > every minute by the cron job (and also logs a message).  My issue is
> > > that I'm watching the logs and I'm noticing that my applications
> > > context is reloaded after an arbitrary amount of time.  To be more
> > > precise, here is an example of what I'd see in the logs...
>
> > > [INFO] Application initializing...
> > > [INFO] Servlet called 1 times.
> > > [INFO] Servlet called 2 times.
> > > [INFO] Servlet called 3 times.
> > > ...
> > > [INFO] Servlet called 79 times.
> > > [INFO] Servlet called 80 times.
> > > [INFO] Application initializing...
> > > [INFO] Servlet called 1 times.
> > > [INFO] Servlet called 2 times.
>
> > > So, as you can see, the application starts and the init servlet is
> > > loaded (as expected) and I get the "Application initializing" info log
> > > message.  After that, cron calls the other servlet every minute, and
> > > it posts another log message.  However, after a seemingly random
> > > amount of time, in this case 80 minutes, the application context
> > > reloads which makes me assume that my entire application restarted.
> > > It happens at different intervals each time, anywhere from half an
> > > hour to a few hours.  And, I never get any error messages in my log.
> > > Can someone help me understand this?
>
> > > Thanks in advance
>
> > > Charles

-- 
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-appeng...@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