I've got a simple architecture, there are groups, users and group-events. • Users login with Facebook • Users can search for a group or a group-event by name, location and/or datetime • Users can create groups • Users can RSVP to group events if the group owner allows open RSVPs, else the user must be a group member • Group owners can manage members (e.g.: remove group membership from certain members) • Group owners can create group-events • Events have a bunch of features, and thus could end up with a lot of space on the db (e.g.: with streaming video)
I want a more distributed architecture, where each group is on its own separate db, for the purposes of increased: • Security • Modularity • Speed • Concurrency • Scalability • Portability And to show off the features of web2py =P Could you please tell me how you would recommend creating a multi-tenant system out of this, where each tenant holds one group? Thanks for all suggestions, Alec Taylor PS: I will be open-sourcing this entire system following August 2. --