Just did one quick test, it takes about 24 s to spin up an instance. I
guess all this code we've written has added about 10 s of startup
time. So far it hasn't been a problem because we reserve instances.

Oh there's one other trick that we do. We map /_ah/warmup to a servlet
that exercises as much of our stack as possible.

We use Spring 3.0.x. Our lib folder shows 47 individual JARs
(including our own). Yikes!

On Apr 10, 6:12 am, Tomas <tomas.ada...@gmail.com> wrote:
> Hi, I've done all of those already and nothing helps.
>
> As I said - the simplest MVC with just minimal spring libraries (excluding
> jpa/jdo app engine lib) with one JSP with only htm in it tak 13+ secs to
> startup.
>
> I've spent two days trying to optimize everything (annotations support,
> scanning, repacking to bigger jars) but nothing helps.
>
> 1) what version of spring do you use (maybe the 3.1 is causing troubles)
> 2) how many other libraries did you have in your application
>
> Thanks.
>
>
>
>
>
>
>
> On Monday, 9 April 2012 17:48:35 UTC+12, jon wrote:
>
> > Our app is also Spring-based. We did some optimisation about a year
> > ago. Don't really remember how quickly we got our app to start. I
> > think it was in the ballpark of the 13s result you got. 50s is too
> > long.
>
> > Here's what we've done:
> > * combine our own classes into one JAR
> > * reduce dependencies as much as possible (exclude unnecessary JPA/JDO
> > dependencies if you're not using them)
> > * turn off Spring autoscan (we list Controllers explicitly, but we do
> > use annotations inside the Controllers)
> > * use static instead of dynamic JSP includes when possible
> > * turn on JSP precompilation
> > * there may be a few other things I'm forgetting
>
> > On Apr 8, 6:16 pm, Tomas <tomas.ada...@gmail.com> wrote:
> > > Hi guys,
>
> > > I've decided to convert my servlet/jdo based app engine app to spring
> > mvc
> > > (the current app is starting to limit me on doing quick
> > > changes/improvements in the code and as I have quite good experience
> > with
> > > spring on standard non cloud platforms I've decided to give it a go).
>
> > > So I've put together project including:
>
> > > - Spring + Spring MVC + Apache Velocity
> > > - ehcache + spring-annotations for ehcache + own decorators/interceptors
> > > for appengine memcached
> > > - objectify
> > > - some other util classes ie jsoup, commons (util, baens, logging,
> > codec),
> > > gdata
>
> > > The lib directory contains ~42MB of jars (including appengine libraries
> > > which makes ~25MB)
>
> > > After deploy, the app takes 50+ seconds to start (sometime the first
> > > request get killed after 60 seconds and another app is started) - I've
> > read
> > > some articles about speeding up the spring on gae and decided to do
> > another
> > > little test. I've created testing app containing only spring + spring
> > mvc
> > > with one controller (no other beans, but had to keep the annotation scan
> > > enabled for mvc mapping - but disabled the component scan). The
> > controller
> > > simply forwards to JSP file with text. Deployed and the page got
> > displayed
> > > after 13 seconds.
>
> > > I knew the Spring with all proxies and scanning is not optimal for GAE
> > but
> > > I wasn't expecting this at all - it seems like the app have issues with
> > > simple loading the libraries as I can see how the memory of instance is
> > > growing by 1 MB per second. I've tried to:
>
> > > 1) merge jars into 3-4 bigger ones
> > > 2) disable annotations (just for the test as with new spring mvc its
> > quite
> > > hard to do some better mapping only in xml)
> > > 3) lazy load some spring beans
>
> > > And I can save like 5-10 secods from those 50+ seconds of my startup -
> > is
> > > it really so bad for everyone or is there some magic setting?
>
> > > Whats your normal startup time of your spring based app?

-- 
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-appengine@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