A method of processing transactions requested by an application in a distributed computer system comprising: at least one resource comprising a plurality of storage areas each with an associated resource manager, the storage areas holding the same tables as each other; or a plurality of resources each comprising at least one storage area with an associated resource manager, the storage areas holding the same tables as each other; a transaction manager that is linked, by way of a network or a local application programming interface, to each of the resource managers, the transaction manager being configured to coordinate transaction prepare and commit cycles; wherein the application requests operations on the resources by way of an interface; wherein a dispatch function directs transactions from the application to the appropriate storage area or storage areas on the basis of the content of the tables in the storage areas, in such a way that any given transaction is routed only to the storage areas containing entries upon which the transaction operates, allowing another transaction operating on different entries to be routed concurrently in parallel to other storage areas; wherein a safe timestamp manager is provided to allocate new timestamps for committing transactions in a single order; wherein new transactions requested by the application are assigned a most current safe timestamp when they first access a resource, the safe timestamp being defined as the highest timestamp where all transactions with timestamps less than or equal to the safe timestamp have been completed; wherein each transaction is assigned a unique timestamp by the safe timestamp manager as it begins processing; wherein the safe timestamp is increased as transactions are completed; wherein the safe timestamp manager hands out the current safe timestamp when a transaction requested by the application first accesses the resource, and wherein handing out the current safe timestamp is a read-only operation such that concurrent transactions do not need to lock against each other in order to obtain the current value of the safe timestamp; wherein each storage area acts as a single resource manager and each storage area/resource manager is informed to commit by the transaction manager; wherein, as part of a commit operation, a storage area/resource manager puts together its own commit message, and the commit message is transmitted via a network protocol to any other resource manager that is involved in the transaction, the protocol being defined by the resource manager; and wherein each storage area has its own independent Total Order, such that commit messages for different storage areas are received and processed in different Total Orders. at least one resource comprising a plurality of storage areas each with an associated resource manager, the storage areas holding the same tables as each other; or a plurality of resources each comprising at least one storage area with an associated resource manager, the storage areas holding the same tables as each other; a transaction manager that is linked, by way of a network or a local application programming interface, to each of the resource managers, the transaction manager being configured to coordinate transaction prepare and commit cycles; wherein the application requests operations on the resources by way of an interface; wherein a dispatch function directs transactions from the application to the appropriate storage area or storage areas on the basis of the content of the tables in the storage areas, in such a way that any given transaction is routed only to the storage areas containing entries upon which the transaction operates, allowing another transaction operating on different entries to be routed concurrently in parallel to other storage areas; wherein a safe timestamp manager is provided to allocate new timestamps for committing transactions in a single order; wherein new transactions requested by the application are assigned a most current safe timestamp when they first access a resource, the safe timestamp being defined as the highest timestamp where all transactions with timestamps less than or equal to the safe timestamp have been completed; wherein each transaction is assigned a unique timestamp by the safe timestamp manager as it begins processing; wherein the safe timestamp is increased as transactions are completed; wherein the safe timestamp manager hands out the current safe timestamp when a transaction requested by the application first accesses the resource, and wherein handing out the current safe timestamp is a read-only operation such that concurrent transactions do not need to lock against each other in order to obtain the current value of the safe timestamp; wherein each storage area acts as a single resource manager and each storage area/resource manager is informed to commit by the transaction manager; wherein, as part of a commit operation, a storage area/resource manager puts together its own commit message, and the commit message is transmitted via a network protocol to any other resource manager that is involved in the transaction, the protocol being defined by the resource manager; and wherein each storage area has its own independent Total Order, such that commit messages for different storage areas are received and processed in different Total Orders.