Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Google App Engine compatibility layer

I'm planning an application running on Google App Engine. The only worry I would have is portability. Or just the option to have the app run on a local, private cluster.

I expected an option for Google App Engine applications to run on other systems, a compatibility layer, to spring up. I could imagine a GAE compatible framework utilizing Amazon SimpleDB or CouchDB to offer near 100% compatibility, if needs be through an abstraction layer. I prefer Python though Java would be acceptable.

However, as far as I know, none such facility exists today. Am I mistaken and if so where could I find this Googe App Engine compatibility layer. If I'm not, the questions is "why"? Are there unforetold technical issues or is there just no demand from the market (which would potentially hint at low rates of GAE adoption).

Regards,

Iwan

like image 313
soyrochus Avatar asked Oct 19 '09 16:10

soyrochus


2 Answers

The appscale project is designed to do exactly this. See https://github.com/AppScale/appscale/wiki

like image 65
Wooble Avatar answered Nov 04 '22 08:11

Wooble


I could imagine a GAE compatible framework utilizing Amazon SimpleDB or CouchDB to offer near 100% compatibility

GAE/J uses DataNucleus for persistence. DataNucleus also has plugins for RDBMS, LDAP, XML, Excel, ODF, OODBMS, HBase (HADOOP), and Amazon S3. Consequently the persistence layer (using JDO or JPA) could, in principle, be used across any of those. To write a DataNucleus plugin for Amazon SimpleDB shouldn't be too hard either, or CouchDB.

--Andy (DataNucleus)

like image 36
DataNucleus Avatar answered Nov 04 '22 07:11

DataNucleus