000167765 001__ 167765
000167765 005__ 20190316235156.0
000167765 037__ $$aREP_WORK
000167765 245__ $$aJPaxos: State machine replication based on the Paxos protocol
000167765 269__ $$a2011
000167765 260__ $$c2011
000167765 300__ $$a38
000167765 336__ $$aReports
000167765 520__ $$aState machine replication is a technique for making services fault-tolerant by replicating them over a group of machines. Although the theory of state machine replication has been studied extensively, the engineering challenges of converting a theoretical description into a fully functional system is less understood. This creates difficulties to implementors, because in designing such a system they face many engineering challenges which are crucial to ensure good performance and stability of a replicated system. In this report, we address this problem by describing the design and implementation of JPaxos, a fully-functional implementation of state machine replication based on the MultiPaxos protocol. Our description includes the basic modules of a state machine replication implementation, like snapshotting of service state, state-transfer and keeping up-to-date all replicas, but focus mainly on three aspects: recovery mechanisms, batching and pipelining optimizations, and a scalable threading-architecture. We present several recovery algorithms that vary in the usage of stable storage and on the system assumptions, including some that use stable storage only once per-recovery. Batching and pipelining are well-known optimizations commonly used in state machine replication. With JPaxos we have studied their interaction in detail, and provide guidelines to tune these mechanisms for a variety of systems. Finally, the threading architecture of JPaxos was designed to scale with the number of cores, while at the same time minimizing complexity to reduce the risk of concurrency bugs.
000167765 6531_ $$aFault tolerance
000167765 6531_ $$aDistributed Systems
000167765 6531_ $$aState Machine Replication
000167765 6531_ $$aPaxos
000167765 6531_ $$aImplementation
000167765 700__ $$aKończak, Jan
000167765 700__ $$0243464$$g175974$$ade Sousa Santos, Nuno Filipe
000167765 700__ $$aŻurkowski, Tomasz
000167765 700__ $$aWojciechowski, Paweł T.
000167765 700__ $$aSchiper, André$$g106377$$0241767
000167765 8564_ $$uhttps://infoscience.epfl.ch/record/167765/files/2011%20JPaxos%20Technical%20Report_1.pdf$$zn/a$$s713098
000167765 909C0 $$xU10411$$0252206$$pLSR
000167765 909CO $$qGLOBAL_SET$$pIC$$ooai:infoscience.tind.io:167765$$preport
000167765 917Z8 $$x175974
000167765 917Z8 $$x175974
000167765 917Z8 $$x175974
000167765 917Z8 $$x175974
000167765 937__ $$aEPFL-REPORT-167765
000167765 973__ $$sPUBLISHED$$aEPFL
000167765 980__ $$aREPORT