I use a task to ping itself every minute... no need to use external
servers.  I find that one minute seems enough but that occasionally
there are still loading requests as Google serves my request from a
different server - maybe to rebalance load?  The app is much more
responsive now but I assume that the only real solution is to speed up
the start up time.  Unfortunately, I chose to use Wicket and Guice -
both of which take too much time up front to initialize.

On Jan 6, 9:33 pm, Jorge <[email protected]> wrote:
> It´s been a lot of discussion about this topic lately. See for
> instance "Tragedy of the Commons, and Cold Starts".
>
> I own dedicated servers with other hosts and what I´ve been doing is
> automatically generating http request to my GAE app every 40 seconds.
> I started with 60 seconds and that became insufficient. Nevertheless,
> the Tragedy of the Commons seams to be real, because now 40 seconds is
> not enough to keep the app warm.
>
> My hope is Google will come up with a satisfactory solution soon.
> Maybe a fee to keep your application warm. I agree the cold startup
> time is absolutely unacceptable.
>
> Jorge Gonzalez
>
> On Nov 12 2009, 6:56 am, DrMorten <[email protected]>
> wrote:
>
>
>
> > 1 minute works for me, I used a commercial service that tracks uptime
> > to check it.
> > Trouble is that the commercial service checks randomly from different
> > locations all over the world.
> > meaning that the application loads out of memory because its hosted in
> > different locations, effectivly killing my CPU qouta.
>
> > On Nov 12, 3:36 am, "[email protected]" <[email protected]> wrote:
>
> > > i only test it in my country, i don't know whether it is still
> > > effective for request that from a foreign country. but to me it is
> > > enough
>
> > > On Nov 12, 10:30 am, "[email protected]" <[email protected]> wrote:
>
> > > > i turn it to 1min, the cron job access a servlet that do nothing just
> > > > for active the app. every 24h it only used 1% of the free cpu-time .
> > > > now at least when i access my app, it was not slow like before. but
> > > > sometime the app still be inactive, although the cron job active the
> > > > app, when i access sush as mainpage, it still took sometime
> > > > to load the servlet. gae doc wrote: <load-on-start> doesn't work , the
> > > > servlet will be load on first accessed.  i think use cron job to
> > > > access mainpage is better. now i have not try ths.
>
> > > > On Nov 12, 5:04 am, James H <[email protected]> wrote:
>
> > > > > So, 1-3 minute intervals seem to do the trick?  Is this technique
> > > > > still working for you?
>
> > > > > On Nov 10, 8:24 pm, "[email protected]" <[email protected]> wrote:
>
> > > > > > i think the gae cloud envrionment does not have the region concept.
> > > > > > every app run on a virtual server , the cron job is used to make the
> > > > > > virtual server active.  if the virtual server is active, when access
> > > > > > the app, there is no need to reinit such as spring listener etc, so
> > > > > > delay time is short, that is so simple  i think.
>
> > > > > > On Nov 10, 7:30 am, James H <[email protected]> wrote:
>
> > > > > > > How would a single cron task really help in an environment where
> > > > > > > multitudes of app servers are involved based on demand, geography,
> > > > > > > etc?  So, how will the task that just ran help someone in U.S. and
> > > > > > > simultaneously help someone in Russia on the same app?  I assume 
> > > > > > > they
> > > > > > > are potentially running on different app servers.
>
> > > > > > > On Nov 10, 1:51 am, m seleron <[email protected]> wrote:
>
> > > > > > > > Thank you for useful information.
>
> > > > > > > > Though various situations are thought
> > > > > > > > I think that a detailed analysis might be necessary to decrease 
> > > > > > > > the CPU TIME.
>
> > > > > > > > thunks
>
> > > > > > > > 2009/11/10 [email protected] <[email protected]>:
>
> > > > > > > > > now i set the schedule time to 3min, it seems work, every 
> > > > > > > > > time i
> > > > > > > > > access my app, i can hardly feel slow. my cron job access a 
> > > > > > > > > servlet
> > > > > > > > > that do nothing and just for active my app. set the schedule 
> > > > > > > > > time to
> > > > > > > > > 1min is better i think,although it will take some cpu time.
>
> > > > > > > > > On Nov 9, 11:31 pm, m seleron <[email protected]> wrote:
> > > > > > > > >> I'm sorry very much.
>
> > > > > > > > >> It examined.
> > > > > > > > >> ServletContextListener#contextDestoryed was not called.
> > > > > > > > >> It was necessary to examine it accurately.
>
> > > > > > > > >> Nichole.
> > > > > > > > >> Thank you for advice.
>
> > > > > > > > >> Does not the page access speed become early?
>
> > > > > > > > >> When you access that I think access speed is open in since 
> > > > > > > > >> the second
> > > > > > > > >> times always
> > > > > > > > >> because by the thing that keeps being accessed with cron
>
> > > > > > > > >> If the display speed is still slow, the cause might be 
> > > > > > > > >> different.
>
> > > > > > > > >> thanks,
>
> > > > > > > > >> On Nov 9, 11:30 pm, "[email protected]" <[email protected]> 
> > > > > > > > >> wrote:
>
> > > > > > > > >> > i set the time to 5min , but i can still find the 
> > > > > > > > >> > contextInitialized
> > > > > > > > >> > info, seems gae's time-out is very short, now i test set 
> > > > > > > > >> > it to 3min
>
> > > > > > > > >> > On Nov 9, 10:18 pm, Joseph Stano <[email protected]> 
> > > > > > > > >> > wrote:
>
> > > > > > > > >> > > have you noticed if that solves the timeout issue?
>
> > > > > > > > >> > > On Mon, Nov 9, 2009 at 5:04 AM, [email protected] 
> > > > > > > > >> > > <[email protected]> wrote:
>
> > > > > > > > >> > > > it seems only contextInitialized method can be 
> > > > > > > > >> > > > executed, and
> > > > > > > > >> > > > contextDestroyed never be executed. so i can not get 
> > > > > > > > >> > > > the time my app
> > > > > > > > >> > > > alive after it was actived.  i have use cron job to 
> > > > > > > > >> > > > access a servlet
> > > > > > > > >> > > > in my app every 10min to avoid app be inactive, if 
> > > > > > > > >> > > > necessary i will
> > > > > > > > >> > > > turn the time to 5min or less
>
> > > > > > > > >> > > > On Nov 9, 11:40 am, "[email protected]" 
> > > > > > > > >> > > > <[email protected]> wrote:
> > > > > > > > >> > > > > thanks , i will try it
>
> > > > > > > > >> > > > > On Nov 9, 10:18 am, philburk <[email protected]> 
> > > > > > > > >> > > > > wrote:
>
> > > > > > > > >> > > > > > > The logging/query idea is probably the best 
> > > > > > > > >> > > > > > > workaround, but I don't
> > > > > > > > >> > > > have
> > > > > > > > >> > > > > > > such a client to do this querying.  If I did, 
> > > > > > > > >> > > > > > > I'd just host my app on
> > > > > > > > >> > > > it :)
>
> > > > > > > > >> > > > > > You could schedule a cron job in GAE that tickled 
> > > > > > > > >> > > > > > your app. If it ran
> > > > > > > > >> > > > > > often enough it might keep it resident.
>
> > > > > > > > >> > > > > >http://code.google.com/appengine/docs/java/config/cron.html-Hidequote...
>
> > > > > > > > - Show quoted text -- Hide quoted text -
>
> > > > > > - Show quoted text -
-- 
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 [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-java?hl=en.


Reply via email to