I agree that making users wait 20 seconds for your app to load is not adequate for the vast majority of apps. I also agree that reengineering everything to try and hide load times from users is a poor solution in most cases.
Using cron to keep your app loaded will not consume your quota; it will actually conserve your quota. Every time your app loads you will be billed for 20s of CPU time. If you keep it loaded, you will only be billed for a few milliseconds per 'keep-alive' cron execution. However, the Google engineers who post here have recommended against doing this. If everyone did it, appengine might run out of resources (RAM, I assume). I imagine that Google will need to either find a way to load apps in 1/10th the time (the ideal solution), raise prices significantly, or ration resources in some other way. If I may make a suggestion to the Google engineers: offer a "keep my app loaded" option and make it available ONLY for billing-enabled apps. Disable cron for apps which are not billing-enabled, so that people who just want free hosting or are merely toying with appengine won't be using up resources all the time. This way, the people who have shown that they are serious about appengine (by laying their cash down) won't be driven away by the people who are just fooling with it. On Jan 12, 1:43 pm, Konrad <[email protected]> wrote: > I asked same question on Stack Overflow (http://stackoverflow.com/ > questions/2051036/google-app-engine-application-instance-recycling-and- > response-times). > > So far proposed solutions (in SO thread and found on other websites) > do not satisfy me. Creating cron or any other kind of periodic HTTP > requests to keep instance up and running make no sense. First - there > is no evidence that this instance will serve next coming request (eg. > from different network location etc.), second - it will consume Quota > (which is less a problem). > > Other solution - refactoring app - replacing critical functionality > with lightweight servlet - sounds better, but is GAE forcing to go > back to CGI programming style? And I could replace let say - API > calls, but to keep UI in better performance shape I would need to > throw away Spring MVC. > > Can anyone confirm that this behavior will not be fixed (yes fixed - > as I think it is a blocker for any serious GAE usage)? Or can anyone > suggest different solution? > > Thanks > Konrad
-- 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.
