Yes, Alon's approach is the correct one. Note that if this is a synchronous web request, App Engine will not scale up additional instances of your application for load if the majority of your requests take longer than 800-1000ms and you won't get any of the benefits of running on GAE.
On Thu, Jul 29, 2010 at 1:13 AM, Alon Carmel <[email protected]> wrote: > i had that exact problem. > I resolved it by cutting down the amount of processing from one process to > tons of them. > You can break all the mini calculations into mini tasks running asyc side > by side and get the work done at the same time or even shorter. > > If tasks isnt the solution for you try the mapper class, google for it. it > lets you catch the HardDeadlineExceededError and save your current job > location and restart again at the same position. > > quick tip from what i've learned. google gives you extra few seconds before > they break your process with HardDeadlineExceededError, its not something > static but its around 2-3 seconds, you can do alot when you hit that. do > try: catch on that and test it. > > For large datastore uploads and so on use the bulkloader tool. > > - > Cheers, > > def AlonCarmel(request) > import simplejson as json > contact = {} > contant['email'] = '[email protected]' > contact['twitter'] = '@aloncarmel' > contact['web'] = 'http://aloncarmel.me' > contact['phone'] = '+972-54-4860380' > return HttpResponse(json.dumps(contact)) > > * If you received an unsolicited email from by mistake that wasn't of your > matter please delete immediately. All E-mail sent from Alon Carmel is > copyrighted to Alon Carmel 2008. Any details revealed in e-mails sent by > Alon Carmel are owned by the Author only. Any attempt to duplicate or > imitate any of the Content is prohibited under copyright law 2008. > > > > On Thu, Jul 29, 2010 at 8:29 AM, Lu <[email protected]> wrote: > >> Hi, >> >> My application throws 'HardDeadlineExceededError' exception and i know >> the reason is that google only allows at most 30 secs to give >> response. However, I am doing large amounts of processing on the >> server side and I cannot manage to give feedback under 30 secs. >> >> Is there any mechanism that can throw some whatever stuff back to >> client every 30 secs and meanwhile still do the processing on the >> server side? >> >> Thanks, >> Lu >> >> -- >> 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]<google-appengine%[email protected]> >> . >> For more options, visit this group at >> http://groups.google.com/group/google-appengine?hl=en. >> >> > -- > 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]<google-appengine%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > -- Ikai Lan Developer Programs Engineer, Google App Engine Blog: http://googleappengine.blogspot.com Twitter: http://twitter.com/app_engine Reddit: http://www.reddit.com/r/appengine -- 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.
