Abstract: An actively replicated, fault-tolerant database system based on a state machine approach that supports the concurrent execution of multiple transactions requested by a plurality of application clients communicating with the system. The system includes a plurality of database servers for storing system data and an application server layered over each database server for controlling the access to and the manipulation of data stored at the underlying database server. The application servers replicate system data to at least one other database server and coordinate the execution of transactions at each database server to ensure consistent data replicas across the system. More specifically, the application servers administer one of two preselected, novel coordination protocols governing the execution of each database-dependent transaction.