The TyphoonAE Philosophy
The Google App Engine SDK delivers a development web server that mirrors the production environment near flawlessly. But you obviously can't use that in a real production environment. That's where TyphoonAE comes in. It is the missing link to build a full-featured and productive serving environment to run Google App Engine (Python) applications.
We started TyphoonAE to understand and apply the techniques and philosophy of GAE using high-performance and high-scalable open source software on commodity hardware. In the beginning it was a proof of concept and - to be honest - for fun.
The main principles in the design of TyphoonAE are decoupling and statelessness to provide concurrency, better caching, horizontal scalability and fault-tolerance. It integrates various open source products where each one is a superhero and scales independently.
We took advantage of the SDK's API proxy stub architecture as a non-intrusive approach from the very first line of code. So, patching the SDK is totally unnecessary. This allows us to follow changes and updates very quickly. -- TyphoonAE Google Code Wiki
The growing popularity in GAE as a framework, and the desire of some developers to use it in a real production environment may lead them to create their own GAE implementations. AppScale was one of the earliest projects to offer an alternative GAE backend. It can offer GAE in a Eucalyptus environment or Amazon's EC2.
TyphoonAE offers many features with supported datastores like BDBDatastore and MongoDB (a NoSQL DB). TyphoonAE also supports Memcached, and it uses RabbitMQ for messaging. It also uses Tornado for Web Sockets, ejabberd, and the Nginx HTTP Server via FastCGI.
Project developers intend to implement other datastore backends in the near future. TyphoonAE currently implements almost all of the services in GAE, except incoming mail.