It's hard to be certain, but it *seems* like the biggest delay is reading files from whatever it is that passes for a network filesystem. I've timed several parts of my app and the only reasonable explanation I can come up with is that classloading is painfully and erratically slow. This hypothesis is consistent with one quirky observed behavior - putting all your classes in a single jar file (instead of WEB-INF/classes) has a measurable (beneficial) effect on application startup time.
Jeff On Thu, Mar 15, 2012 at 4:09 PM, Emanuele Ziglioli <[email protected]> wrote: > Has anyone managed to profile cold starts (I don't know whether that's > even possible) to see where they take most of the time? > Does the length of cold starts on GAE servers correspond to how long > it takes on the development server? > > I use GAE for Java so what I'll write below reflects that. > I know the libraries I use employ annotations and that's got to have > an impact. Jaxb (coupled with restlet) for example has got a terrible > cold start time. > My warmup request does exactly that, it triggers a jaxb warmup. But > lately it has been failing. Since that seems to affect mostly the > warmup request, users don't seem to be affected terribly (we have very > low traffic at this stage though). > > I wonder whether the Google Engineers could implement something > similar to what Android does: there's a resident Dalvik VM and all new > processes fork from it. > Our prototype process could have the jvm, the web server and all the > rest that's common. Just a thought. > > E > > -- > 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. > -- 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.
