-
Google App Engine: Should TOPP Use It?
last modified May 26 by ejucovy
The Basics
Google is providing Google App Engine, a service to run web apps for free! Using Google's kind of ridiculously huge infrastructure! More details:
- For free accounts, up to 500MB storage
- For now, limited developer access (although there is an open-source project to run GAE apps on your own server)
- Uses Google's BigTable for dynamic stuff. (BigTable's not really a traditional relational database OR an object database; it's more like a gigantic distributed hashtable)
- For free accounts, limited number of CPU cycles/bandwidth allowed per month, Ian calculates it's sufficient for OpenPlans.org.
- Individual requests must be handled within 10-15 seconds MAX; most requests must be much less.
- 1000 file limit (including blobs)
- Limited API to ensure reliability/play-nice-ness between different apps.
The Questions
Should TOPP port our applications? We probably couldn't ever hope to directly port most of our stuff, but many of the libraries we use could be ported and some of our smaller applications could potentially be ported without much difficulty.
Benefits
- Running on Google's infrastructure would mean free hosting
- Having a Google App Engine version of OpenCore would make it trivial for people to host their own instances (we could even do this as a (paid?) service)
Drawbacks
- Running on Google's infrastructure would mean Google would have all our data
- Making a Google App Engine version of OpenCore would be a lot of work to achieve the functionality we currently have.
Should TOPP implement Google App Engine "right"? There are a number of things that could be nicer about the App Engine framework as it is today.
- Background operations are not supported
- Communication between GAE apps is limited to HTTP calls
- Better versioning management for Apps and their dependencies (currently all versions of an App must rely on the same versions of the libraries they use)
- Of course, fully Free software