java - AppEngine frontend to DB latency temporarily ~10 secs every ~20 calls? -
this (see chart below) happening since 3/7. sure can because of instances loading , unloading. know other reasons gae behaving this?
it's not high replication instance. , during testing had 5 instances f2 running our test client calls. there db calls, image processing , memcache usage.
there 2 issues equal: http://code.google.com/p/googleappengine/issues/detail?id=4180&sort=priority&colspec=id%20type%20component%20status%20stars%20summary%20language%20priority%20owner%20log
and there's entry in forum: https://groups.google.com/forum/#!topic/google-appengine/js5cerwlqz0/discussion
logging (shay requested) shows persistence manager seems take 6 seconds initialize:
2012-03-11 15:32:47.543 /api/yyy 200 16811ms 0kb xxx/1.1 cfnetwork/548.1.4 darwin/11.0.0 78.53.230.114 - - [11/mar/2012:07:32:47 -0700] "post /api/yyy http/1.1" 200 94 - "zzz/1.1 cfnetwork/548.1.4 darwin/11.0.0" "zzz.appspot.com" ms=16812 cpu_ms=6040 api_cpu_ms=82 cpm_usd=0.167820 pending_ms=5765 instance=00c71b117ca3858c47bdc41d5b30a732dd76eaaf 2012-03-11 15:32:37.196 www.server.xxxservlet getvvv: 1 2012-03-11 15:32:37.202 www.server.xxxservlet getvvv: hash 2012-03-11 15:32:37.207 www.server.xxxservlet getvvv: pm (persistencemanager pm = pmf.get().getpersistencemanager();) 2012-03-11 15:32:43.606 www.server.xxxservlet getvvv: data 2012-03-11 15:32:47.355 www.server.xxxservlet getvvv: got data 2012-03-11 15:32:47.388 www.server.xxxservlet getvvv: done
and pmf implemented as:
public final class pmf { private static final persistencemanagerfactory pmfinstance = jdohelper.getpersistencemanagerfactory("transactions-optional"); private pmf() {} public static persistencemanagerfactory get() { return pmfinstance; } }
the area don't see stats code running, stats starts when request entered don't think got thing instance loading.
suggest adding logs see flow of handler code.
Comments
Post a Comment