google-app-engine


Design suggestion for an app which will wake up periodically and execute some long running tasks


I wish to develop a Java Appengine app. The basic task would be to do some tasks at some pre-configured intervals. The task itself could run for several hours and push messages to mobile devices (GCM). Some task timings could overlap.
Q1. Is Cron job the way to go? How do you set up cron job timings dynamically or have it read them from some config file? (since the timings of each job may change, sometimes). EDIT: This needs to work such that I can keep adding some "timings" to the config, dynamically (maybe through a Google spreadsheet or something and without having to redeploy the app)
Q2. I was reading about manual scaling, "*A manually-scaled instance can choose to handle /_ah/start and execute a program or script for many hours without returning an HTTP response code.*"
For my use-case, do I need automatic scaling or manual scaling? or should I use Backends?
Thanks!
For any task that runs several hours on app engine backend instances is the answer because frontend instances has 60seconds deadline before it kills any request.
Cron job by design is for tasks that are supposed to be done at specified intervals. See the app engine cron documentation on how to configure the intervals in cron.xml (you can't dynamically change the schedule).
From the requirements you've shared, I suggest you look into Task queues which can be used along with Cron job to achieve what you're looking for.

Related Links

What App Engine datastore caching strategy will give complete cache consistency?
Google App Engine : High CPU Utilization
appengine cloud storage compile error in demo project
Issue with using the Google Datastore query console
How can I run `gcloud preview app setup-managed-vms` without this error?
Appengine unit test fail with Objectify - No Class registered
What is the name of the database or table?
Google Apps Domain Authentication with Google App Engine - Too many redirects
can I combine NDB and mysqldb in one app on google cloud platform
Logging in a Google Cloud Endpoint
Appengine Maven Plugin - Endpoints Goal - Enable filtering on .discovery files
authentication request once for both side
How do I remove my reported issue from google code bug tracking?
Can I use Goroutines in Google App Engine?
Google App Engine: Caching a 30 mb object
How to store image location in google app engine (Java)

Categories

HOME
kentico
jpa
dns
ns-3
interface
jwplayer
sitecore
nsbundle
tail
gembox-spreadsheet
babeljs
x264
spring-session
barcode
qpython
sendgrid-api-v3
syntaxnet
fabric.io
comsol
dynatrace
null-pointer
bourbon
oledb
simpleitk
ksh
string-concatenation
scriptella
displaytag
highstock
pylons
datastax-enterprise-graph
carrierwave
testcomplete
magento-1.8
cart
jbutton
arduino-ide
baidu-map
processwire
getlasterror
ideascript
amazon-ses
tasm
glm-math
claims
ssrs-2014
apollostack
geotiff
boo
otp
quicktime
objectscript
bootstrap-tags-input
testrail
simplepie
google-cloud-console
vulcanize
uicolor
cifilter
google-query-language
omniauth-facebook
lz77
nio2
aspen
np-spring
jaunt-api
concept-insights
relativelayout
coda
toolkit
linked-tables
apache-commons-daemon
omnifaces
j-security-check
fits
at-job
mruby
rickshaw
formview
xml-namespaces
authlogic
file-not-found
synapse
multiautocompletetextview
gtm-oauth2
mysql-error-1044
tlf
observium
video-codecs
superscrollorama
mantle
cascadingdropdown
alice
robotlegs
patricia-trie
zope.interface
flex-mobile
tournament
qglwidget
timertask
strtod
google-wave
ifilter
lemmatization

Resources

Encrypt Message



code
soft
python
ios
c
html
jquery
cloud
mobile