Classic Note Entries

Software Architecture

What I'm looking for

From an architecture standpoint, the web framework chosen is probably the least important decision you'll make. Large social networks typically utilize a distributed service oriented architecture at the middle tier and then a variety of NoSQL and caching solutions in the backend. This is where most of the heavy lifting is done with the business and data access logic.
The web tier should be a thin, fast framework, focused on presentation layer that supports making RPC or REST calls to your middle tier, deserializing the responses, and then some logging and session management utility classes. Any of the frameworks you mentioned will work, but web2py is probably most easily adapted to your situation.