Open Console connects users with services, with as crucial requirement that it must be useable by non-technical people. In the far future, it may be possible to develop protocols to support multiple installations of Open Console, but for now it is a single instance.
To be able to handle potentially tens of millions of users and thousands of services, the Open Console implementation is built with clustering in mind, and many dedicated services.

The system is built on 3 clusters of servers with 4 separate databases.
The "Owner" website is the site that users see. It is implemented to be a cluster of webservers. Users mainly fill in forms to configure their World. The interface is designed to use the servers as little as possible, because hardware is limited at the moment.
The account information, personal identies, and groups are stored in a high quality redundant object database. Currently stored in MongoDB, probably moving to CouchDB. The code is written in Perl with the clever Mojolicious framework.
See the Owner website repo and Object model repo.
The verification of proofs is sometimes a resource consuming activity, which should not disturb interactive web access. Therefore, these processes are run on dedicated servers. The results are returned to the owner website logic when ready.
The tasks are managed by Minion servers, each with a Postgresql database.
See the Task manager repo.
Most activities are managed in the Owner website logic. This changes when performance is really required to log-in people to services; this is handled by a separate set of servers.
Logging-in to a service for the first time (or when expired) requires that the contract is revisited to look for changes. The result is a "Grant" object which contains many details. That Grant is used by the Connect servers to implement OpenID and other authentication protocols.
See the Connection handler repo.