Experiment #2: Bigger better faster frontends Using JARed classes, with F2 frontends:
19409ms 18516ms 17125ms 18056ms 17152ms 18708ms 28104ms 16821ms 18074ms 16859ms 18311ms Small but noticeable improvement, maybe 10%? Same deployment, with F4 frontend: 12063ms 9070ms 10037ms 8617ms 10024ms 10656ms 8871ms 9330ms 9019ms 9253ms Hot damn! I'm not entirely sure how to interpret these results. An F4 is about twice as fast as an F1. This suggests the problem is significantly computational. Except that an F2 is more or less the same speed as an F1, which suggests the problem is almost entirely I/O. Maybe F2 instances aren't actually twice the CPU power of an F1? Maybe F4 instances get some special I/O priority? Anyone want to speculate? Jeff On Sun, Jun 24, 2012 at 5:00 PM, Jeff Schnitzer <[email protected]> wrote: > 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.
