views:

146

answers:

4

Hi,

I recently had to realize a project on Google AppEngine. At the beginning I was sceptic. But there a some really nice approaches on Appengine:

  • No server setup. Everything works out of the box. Gzip, libaries, etc.
  • One-Click-Deployment. Fire up GAE Launcher on the Mac and klick DEPLOY. Done.
  • Low costs
  • Easy in-production-logging

But there are some things I don't like if I'm thinking about professional projects

  • The blobstore. It's just... weird. And non-backupable
  • All the 1 MB restrictions
  • The feeling that your code will only run on AppEngine. (BigTable)

Do you know any similar alternatives to AppEngine? And I don't mean services like EC2.

Regards,

Elias

+3  A: 

You can have a look at AppScale

Its an open-source implementation of AppEngine which you can deploy on your own machines, with a host of databases to choose from.

Ravi
+2  A: 

AppScale and TyphoonAE are both third-party implementations of the App Engine platform. TyphoonAE is targeted at small-to-medium scale, while AppScale is targeted at the large-scale end of things.

As far as backing up the blobstore goes, this is quite doable: just use the built in handler to serve blobs, and, in conjunction with remote_api, you can download your blobs just fine.

Nick Johnson
+1  A: 

I almost hate to mention Microsoft in a Google-related question, but I'm completely vendor-agnostic. So, I'll offer Microsoft's Azure as a platform that offers many similarities to AppEngine but enough differences that it might fit as a good answer to your question.

Azure and AppEngine are similar in that they are both designed to allow you to build easily scalable applications. Azure gives you Microsoft's standard web toolkit options: C#, VB.NET, ASP.NET ASP.NET MVC, but also offers PHP. It has a NoSQL, document database like AppEngine but alsogives you the option of choosing a more standard instance of SQL Server. Although I haven't used it myself, it looks like AppEngine for Business now offers SQL, too.

Azure give you a ready means of having long-running background processes. AppEngine does not to the best of my knowledge.

From my perspective, AppEngine has the huge advantage of charging you for usage only when a request is actually being processed. An Azure instance causes you to get billed even for time that it is completely idle. That's entirely typical, but the fact that Google doesn't so it that way makes me choose AppEngine every time. My budget is too tight to allow me to spend money for idle CPU hours.

Adam Crossland
A: 

There's a port of django to non-relational databases that works with app engine or mongodb.

google for django non-rel

documentation is a bit sparse though

Espen