Distributed
Systems And Cloud Computing Course
Course
ID: 335
18
lectures, 9 tutorials
Syllabus:
The objective is to give students a clear
overview of the problems and issues that must be dealt with in
constructing flexible distributed applications as well as a
comprehensive overview of the basic concepts, technologies and
theoretical foundation of cloud computing. The emphasis is on the
conceptual basis for distributed systems and computer science aspects
of cloud computing rather than a detailed study of particular
commercial systems and standards. Concepts will be
illustrated with
examples from practical systems and include hands-on experience of
building a cloud application.
- Overview of distributed system architecture:
motivation, system structures, architecture, design issues.
- Interaction primitives: message passing,
remote procedure call and Interface definition language, objects and
remote object invocation ( RMI)
- Interaction implementation: message passing,
RPC, concurrency and threads, heterogeneity of systems and languages
- Time Synchronisation
- Publish-Subscribe systems: subscription
classification, composite events, case studies - Siena, SMC, Hermes,
event routing
- Peer-to-peer Networking: Structure,
Case studies - Gnutella, Freenet, BitTorrent.
- Overview of cloud computing
- Virtualisation and multi-tenancy
- Elastic resource management
- Big data and cloud storage
- Pricing Model of Computing Utility
- Elastic Algorithm
- Cloud Security
-
Additional Reading:
- Distributed
Systems Concepts and Design by G. Coulouris, J. Dollimore T.
Kindberg, and Gorden Blair; Pearson 2011 (5th Ed) - Main
Reference
- Distributed Systems: Principles and
Paradigms, A.S. Tanenbaum, M. Steen 2nd ed, Pearson, 2006. -
Main Reference
- Java in Distributed Systems, M. Boger,
Wiley 2001
- Network
and Distributed Systems Management, M. Sloman (ed.), Addison
Wesley 1994
Other Web Links:
Last updated 6 Dec. 2011