Hi Jeff,
just as a comparison, we have 33 classes that get initialised with
Objectify, and it takes merely 2 seconds. We had all the problems you
mentioned prior to jaring things up, and since then performance has been
improved vastly. I thought Google had improved the problem (they made some
comment about this 9 months ago or so, when we posted our summary at
http://www.small-improvements.com/app-engine-performance-tuning) but maybe
they haven't.
We're also using Apache Wicket, and while initialising the mounted paths,
we're actually referring to hundreds of additional Java files, which again
refer to some 2 to 5 inner classes each. This was *killing* us before some
nice fellow suggested jarring the classes, and now even that merely takes 4
seconds during startups.
Maybe it also helps a little that we're on F4 these days, but all the
performance tuning we did back then was on F1. I'm guessing you're on F4
anway, if you're this desperate.
BTW, I had also considered stripping unused classes from the jars, but it
was really the class *loading*, not the parsing of Jar files, that was
causing the slowdown. I'm guessing it had to do with file access
ultimately, and that each file access on the VM needs to be verified by the
secure Classloader, and that this is simply tons more efficient if you're
just looking at the same jar file all the time.
So, add that target to your ant file, and let us know how you go! :)
<target name="createjar" depends="copycerts" description="Creates a jar
from the classes folder">
<jar jarfile="${libs}/small-improvements.jar" basedir="${classes}"/>
<delete dir="${classes}"/>
</target>
Cheers,
Per
--
You received this message because you are subscribed to the Google Groups
"Google App Engine" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/google-appengine/-/LkQhIAFwLWoJ.
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.