I have also noticed long startup times and spent some time attempting
to diagnose the problem.

The first thing I found was that the first time a jar file is used/
referenced a significant overhead is incurred, Typically 1-2 seconds
but sometimes as long as 30 in rare occasions (resulting in a
timeout). I hypothesis that jar files are being loaded from across the
network and are subject to the same timeouts and failures as accessing
the datastore.

By removing third party jar dependencies from my project and relying
more on standard jre libraries, startup time has improved.

Another thing worth nothing is that the java app engine sdk jar
contains useful libraries under the 'repackaged' package. I have
switch from using my own protocol buffer jar to using the app engine
repackaged version and this shaved a further second from startup time.

Secondly I would recommend minimising the size and count of 'resource'
files. By deafult everything in the war file is considered a resource.
By being more specific I shared a further 0.5 seconds from startup
presumably due to the decreased file transfer/copy/initialisation
overhead.

I eagery await the  future optimizations you mention as the current
situation is badly effecting the user experience.

Hope these suggestions help.

Ian
--~--~---------~--~----~------------~-------~--~----~
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-java@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