Hey Rahul, See http://groups.google.com/group/google-appengine-java/browse_thread/thread/b57e6c4895333fa8/f5196d61f70000f2 for an official discussion of this issue. The first post talks about "discouraged" workarounds, but doesn't cite the 60-second ping specifically. This was the result, though, of a string of prior threads that discussed this issue and workaround. As you can see from the date, this is not a new problem. Again, I used the 60-second ping for awhile and it really didn't solve the problem - just ensured that the loading requests happened every 60 seconds :)
As for the framework, good point. I use Wicket which is pretty powerful. I've gotten it down to about 3-4 seconds load. One plugin had a dependency on Spring that I removed. As discussed here: http://code.google.com/p/objectify-appengine/wiki/BestPractices#Automatic_Scanning anything that scans the classpath can be pretty demanding. That being said, I'm not currently using my deployed application for demonstrations - I use a development server hosted on our own machines. My hope is that the restart issue will be resolved someday. Jake On Jun 11, 11:07 am, Rahul <rahul.jun...@gmail.com> wrote: > Jake, > > Is there any official comments on this from google which says that it > discourage the pinging every 60 seconds or so. > > Also if we have some framework which we will always like to have if > doing some production application then what is the way out. > > Thanks, > Rahul > > On Jun 11, 10:16 am, Jake <jbrooko...@cast.org> wrote: > > > Hi Mark, > > > Yes, you can do better than 4.5 seconds without a framework. Also, > > there are layers that can be placed over the low level datastore (e.g > > Objectify) that add ease-of-use without noticeable additions to the > > startup time. > > > The 60 second pinging thing is, indeed, done by some users and is > > officially discouraged by Google. At one point, I set up a similar > > pinging feature and found that it really didn't work. Theoretically > > it should, but the pings just caused loading requests every minute or > > so, which simply reduced the likelihood that a user would see the > > loading request; it didn't solve the problem. > > > Jake > > > On Jun 11, 7:32 am, Mark <mar...@gmail.com> wrote: > > > > Hi, just joining in, trying to sum up: > > > > In the best case (if we only use the low level datastore + no > > > frameworks on top) we can only hope that a fresh restart of our app > > > will take 4.5 seconds? > > > > However if at least one user is hitting the site every 60 seconds from > > > somewhere in the world, then our app should be kept alive and no need > > > for restarts? > > > > Not that I'm planning on doing it, but what prevents developers from > > > simply pinging the site every 60 seconds to force the app to stay in > > > memory? I ask what prevents it because if I play by the rules, I'm > > > going to get penalized if other developers are 'cheating' and doing > > > the artificial pinging, > > > > Thanks > > > > On Jun 9, 5:49 am, Jake <jbrooko...@cast.org> wrote: > > > > > Hey Tin, > > > > > Several people were using GAE's built in timing mechanism to ping the > > > > server to accomplish the same thing. Google came out and officially > > > > discouraged this as it tends to throw off any attempts they are > > > > currently making to fix the problem. I can't tell people what to do, > > > > but I opted to stop using this hack in the hopes that they will solve > > > > the problem. > > > > > Besides, you'll notice that this hack doesn't really work over the > > > > long run. It will essentially restart your server every minute and > > > > won't really prevent the loading request from falling on your users > > > > instead of on your ping. > > > > > Jake > > > > > On Jun 8, 1:54 pm, Tin <tin.c...@gmail.com> wrote: > > > > > > Hi all: > > > > > > We have found a temporary solution for this issue: > > > > > Try with an AJAX timer kicking the server (doing nothing), maybe one > > > > > request per minute (or less) and GAE will keep our site / users in the > > > > > same node. > > > > > In our testing it could avoid the GAE web instance reloaded, but if > > > > > the request interval is long, it would cause another Datastore > > > > > performance issue:http://goo.gl/98zkthatwillbefixedin near > > > > > future. > > > > > > More info please refer to here:http://goo.gl/mzQR -- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group. To post to this group, send email to google-appengine-j...@googlegroups.com. To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.