Reactive Architecture : Distributed Messaging Patterns

About this Course
Reactive Systems are built on a foundation of asynchronous, non-blocking messages. This course will explore that idea in detail. We will discuss replacing distributed transactions with the Saga pattern. We will explore the consequences of building a distributed system on the delivery guarantees we can provide for our messages. Finally we will look at different techniques for delivering the messages like Point to Point or Publish/Subscribe, and how we can leverage external technologies such as a message bus to help.
Course Syllabus
- Message Driven Architecture
- The role of messages in a distributed system.
- A comparison of synchronous, and asynchronous messages
- Sagas
- Introducing the Saga pattern as a way to deal with transactional problems in a distributed system.
- Messaging Patterns
- A discussion of The Two Generals Problem
- Delivery Guarantees in a distributed system
- Point to Point messaging
- Publish Subscribe messaging
General Information
- It is self-paced.
- It can be taken at any time.
- It can be taken as many times as you wish.
Recommended skills prior to taking this course
- Experience in the design of software systems.
Grading scheme
- The minimum passing mark for the course is 75%, where the review questions are worth 40%, the case study exercises are worth 30% and the final exam is worth 30% of the course mark.
- You have 1 attempt to take the final exam with multiple attempts per question.
Requirements
- Reactive Architecture: Introduction to Reactive Systems, Reactive Architecture: Domain Driven Design and Reactive Architecture: Reactive Microservices, Reactive Architecture: Building Scalable Systems or an understanding of the concepts covered in these courses.
