Hi Tim, I agree. It's not the persistence of any statics or memory that concerns me though. It's the fact that every time my VM gets recycled, the next hit to my site takes a few seconds to resolve while GAE spins up another JVM to service it. It's the performance that I'm more worried about, not to mention that every time GAE creates a new VM for me, it takes significant CPU cycles to do so.
On Feb 12, 11:52 pm, Tim Hoffman <[email protected]> wrote: > 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
