Experiment #1: JARing my classes.
Times are measured by shutting down instance, hitting a URL, looking
at request time in logs. Repeat until bored.
First, the "control". My app (sandbox appid), normally deployed
(classes in WEB-INF/classes):
21118ms
23849ms
35995ms
20556ms
21620ms
23718ms
34446ms
42948ms
22487ms
32722ms
34511ms
31883ms
Redeployed, same code but with classes JARed instead of in WEB-INF/classes:
19240ms
19386ms
19912ms
27517ms
20400ms
20483ms
20186ms
19517ms
20352ms
19528ms
20856ms
What's interesting is that this change didn't improve the best-case
load times by much, but it almost eliminated the crazy variance. This
is a huge win.
Conclusion: Use this ant script for deployment:
<target name="deploy">
<delete dir="${staging.dir}" />
<mkdir dir="${staging.dir}" />
<copy todir="${staging.dir}">
<fileset dir="war">
<exclude name="WEB-INF/classes/**" />
<exclude name="WEB-INF/appengine-generated/**"
/>
</fileset>
</copy>
<jar destfile="${staging.dir}/WEB-INF/lib/classes.jar"
basedir="${classes.dir}" />
<appcfg action="update" war="${staging.dir}" />
</target>
--
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.