Hi Julio,

I guess I know you from Brazil, but I'll write in English. Here is what we 
do for a production Java app:

1) Using flex Json, I added some data fixtures in Json to an app resource 
foder, and created a small servlet that I called SetupServlet. This servlet 
does your trick on checking resultset sizes and populates the database if 
required, and is only called by an app administrator. Very usefull! You can 
combine this with Robert suggestion for an upload-based setup servlet, that 
load the file from Blobstore, for example.

2) To import a really large dataset, like migrating it from one server to 
another, the python remote_api is a great (but slow) tool, because you can 
do some computation to translate a legacy app database to your new 
app-engine optimized version, all on the fly and without the requirement of 
a new build-deploy clicle. But make sure to call db.allocate_id_rage() or 
similar before putting the app alive. I forgot it, and this will cause a lot 
of problems ;). As Robert suggested, bulkloader does most of the job for 
you, and you just need to write some yaml files to map you models fields and 
you can import form a csv file. This is a nice aproach since you can change 
your data remotely, but it will consume your bandwidth quota too.

Regarding your concern about a DOS atack, all requests will be served and 
loged. I tryed on my live app (yes, I'm a bit crazy) and the ammount of 
instances growth from 10~14 to 72 in a few seconds to serve +1000 
simultaneous requests. I also found that my logic was not optimized and that 
helped me a bit! Anyway, that is just all what AppEngine is about: scale as 
you need to support a big access when your app is featured on Yahoo home 
page! What you can do to avoid abuse is monitor your top 10 access and 
optionally blacklist what you fell like a DOS. You can do an appcfg.sh 
upload_blacklist just to make your app blacklist an ip address imedieatly, 
but know what is a DOS, currently, is up to you. You may whant to avoid 
abuse with some tokens, anyway.

Hope it helps!

Best Regards,

--
Ronoaldo Pereira

-- 
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.

Reply via email to