Multithreading Strategies for Replicated Objects

Kapitza R (2008)


Publication Type: Conference contribution

Publication year: 2008

Journal

Publisher: Springer-verlag

Edited Volumes: Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)

Pages Range: 104-123

Conference Proceedings Title: Middleware 2008

Event location: Leuven, Belgium BE

DOI: 10.1007/978-3-540-89856-6_6

Abstract

Replicating objects usually requires deterministic behaviour for maintaining a consistent state. Multithreading is a critical source of non-determinism, completely unsupported in most fault-tolerant middleware systems. Recent publications have defined deterministic scheduling algorithms that operate at the middleware level and allow multithreading for replicated objects. This approach avoids deadlocks, improves performance, and makes the development better resemble that of non-replicated objects. This paper surveys those algorithms and analyses their differences. It also defines extensions to two efficient multithreading algorithms to support nested invocations and condition variables with time-bounded wait operations similar to the Java synchronisation model. In addition, we provide an experimental evaluation and performance comparison of the algorithms, indicating the areas in which each algorithm performs best. We conclude that replication middleware should implement reconfigurable multithreading strategies, as there is no optimal one-size-fits-all solution. © 2008 Springer Berlin Heidelberg.

Authors with CRIS profile

How to cite

APA:

Kapitza, R. (2008). Multithreading Strategies for Replicated Objects. In Middleware 2008 (pp. 104-123). Leuven, Belgium, BE: Springer-verlag.

MLA:

Kapitza, Rüdiger. "Multithreading Strategies for Replicated Objects." Proceedings of the ACM/IFIP/USENIX 9th International Middleware Conference, Leuven, Belgium Springer-verlag, 2008. 104-123.

BibTeX: Download