Course detail
Distributed Application Environment (in English)
FIT-PDIeAcad. year: 2023/2024
Common characteristics of distributed environments. Principles, algorithms, and systems of distributed computing. Types of distributed environments. Design and model of distributed algorithms. Distributed operating and file systems. Cloud Computing. Data-centric computing. Technology JSP, J2EE, JavaBeans, EJB, RPC, XML-RPC, SOAP, IIOP. Web services. Security in distributed applications.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Entry knowledge
Rules for evaluation and completion of the course
- Mid-term written examination - 15 points
- Evaluated project with the defense - 30 points
- Final written examination - 55 points
Aims
The aim is to understand principles and design of applications for distributed environment, obtain overview of modern distributed environments and ability of usage application interface for various programming environments.
The students will become familiar with concepts and principles of distributed environments, with the design and implementation of applications for distributed environments and security aspects in distributed environments.
- A student learns terminology in the domain of DS
- A student learns to create small projects
- A student learns to present and defend the results of the small project
Study aids
Prerequisites and corequisites
Basic literature
B. Burns: Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services, O'Reilly Media, 1st edition, 2018. (EN)
Kshemkalyani, Singhal: Distributed Computing, Cambridge Press, 2008. (EN)
Recommended reading
Classification of course in study plans
Type of course unit
Lecture
Teacher / Lecturer
Syllabus
- Principles and models of distributed computation
- Physical and Logical Time
- Global State and Snapshot Algorithms
- Group communication
- Authentication in Distributed Systems
- Algorithms of Leader Election and Mutual Exclusion
- Midterm Exam
- Virtualization and Cloud Computing
- MapReduce Programming Model and Apache Hadoop
- Principles of Apache Spark
- Distributed Stream Processing in Apache Flink
- Enterprise Service Bus
- Distributed computing with BOINC
Project
Teacher / Lecturer
Syllabus
- Implementation of a distributed application in the given target environment (Spark, Flink, Azure, Hadoop,...).