Building Reliable Distributed Systems
Course of Distributed Systems Seminars
Principal Instructor: Carlo Marchetti
Lecturers: Stefano Cimmino, Giorgia Lodi
This series of lectures is aimed at introducing students to the
main problems, methodologies, techniques and tools related to building reliable
distributed computing systems and applications. Rather than on hardware and OS
aspects, the emphasis is on models, software techniques and software
technologies enabling the development of distributed services that stay correct
and responsive even in presence of (some) faults. In particular, it will be
presented how the software replication and group communication paradigms can be
used to implement reliable systems on top of COTS (commercial off-the-shelf)
hardware. Then, a detailed presentation of one of the most widely used group
communication toolkit (JGroups) will be given, along with demonstrations of its
practical applications to software replication. Finally, Information about the
use of these techniques in the Java Enterprise Edition architecture for
implementing clustering complements the lectures, along with a comprehensive
overview of recent advances on middleware services in the Jboss Java EE platform.
Students will be engaged in implementing solutions during the course.
Lectures, references and provisional course schedule
|
1st Lecture Thursday, Lecture-hall A5 |
Lecturer: Carlo Marchetti Covered topics:
References and material Slides - pdf Kenneth P. Birman, Reliable Distributed Systems: Technologies, Web Services and Applications, Springer-Verlag R. Guerraoui, A. Schiper, Fault tolerance by replication in distributed systems, in Proc. of Ada-Europe 1996, Springer Verlag - pdf |
|
2nd Lecture Thursday, Lecture-hall A5 |
Lecturer: Carlo Marchetti Covered topics:
References and material Slides - pdf Kenneth P. Birman, Reliable Distributed Systems: Technologies, Web Services and Applications, Springer-Verlag Gregory V. Chockler, Idit Keidar, and Roman Vitenberg, Group Communication Specifications: A Comprehensive Study, ACM Computing Surveys 33(4), pages 1-43, December 2001 - pdf. |
|
3rd Lecture Thursday, Lecture-hall A5 |
Lecturer: Stefano Cimmino Covered topics:
References and material Slides - pdf |
|
4th Lecture Thursday, Lecture-hall A5 |
Lecturer: Stefano Cimmino Covered topics:
References and material Slides - pdf Active replication - Source Code |
|
5th Lecture Thursday, Lecture-hall A5
|
Lecturer: Giogia Lodi Covered topics:
- JBoss Clustering Service: what is good for and how it works - The clustering framework - Automatic discovery of clustered nodes (use of JGroups) - Fail-over and load balancing (at RMI and HTTP level) - Distributed cluster-wide hot deployment (farming service) - How JBoss clustering framework uses JGroups for group communication
References and material Slides - pdf JBoss Inc, The JBoss 4 Application Server Clustering Guide, 2006. |