Building Modern Distributed Systems with Java

3h 53m 32s
English
Paid

Significant percentage of large scale enterprises that I have been working with, admitted experiencing performance issues with their business critical applications. Most of production systems have been built on top of legacy, monolith technologies. Recent popularity of micro-services will not fulfill its promise of decoupled, scalable and fault-tolerant systems, unless "done right".

Read more about the course

While entering the world of micro-services, engineers start building distributed applications, where robust remote procedure calls and cluster coordination are a must.

In this course you will learn about common challenges that appear while designing and implementing large scale distributed systems, and how Big-Tech companies solve those problems.

Technologies, algorithms and design patterns covered in this course:

  • Service Registry and Discovery, Service Mesh

  • Apache Cassandra

  • ETCD (coordinator managing Kubernetes clusters)

  • Apache Kafka

  • Idempotent service design, retry logic

  • Sharding and Consistent Hashing

  • Client-side Load Balancing, Distributed Tracing, Canary Deployment, Sidecar Pattern, Circuit Breaker

Course will teach you the principles of various distributed systems design, for example master-less vs. with leaders, poll-based vs. push-based, immediate vs. eventual consistency. After completing the course, learning new distributed database technology would be easier, because you will know the common re-used techniques, including their pros and cons.

My intention is to keep course content very practical, with lots of code examples and applied best practices. For example, I will cover Service Registry and Discovery to the detail, that you will know how to implement your own framework on top of ETCD. Throughout the course, we are going to build distributed URL shorten service.

The course may be a good recap for people preparing for systems design interview.

Watch Online Building Modern Distributed Systems with Java

Join premium to watch
Go to premium
# Title Duration
1 Evolution of computer system’s architecture 04:04
2 Challenges of distributed computing 04:10
3 Use-case of course application 04:25
4 Practice 1 04:52
5 The need of communication 06:37
6 Message transport and format 02:20
7 Synchronous and asynchronous communication patterns 03:02
8 Traditional load balancers 02:24
9 Service Registry and Discovery 02:26
10 Service meshes 08:37
11 Idempotent service design 07:34
12 Practice 2 08:42
13 Traditional RDBMS systems vs. NoSQL 06:09
14 Data sharding and consistent hashing 06:25
15 CAP theorem 06:46
16 Short introduction to Apache Cassandra 20:20
17 Practice 3 11:46
18 The need of cluster-wide coordination 07:37
19 RAFT consensus algorithm 12:36
20 Short introduction to Etcd 12:35
21 Implementation of distributed mutex 07:42
22 Leader election design pattern 02:42
23 Deployment requirements for strongly consistent distributed systems 05:18
24 ACID properties in distributed system 04:47
25 Practice 4 17:07
26 Asynchronous communication pattern and message-oriented middleware 05:34
27 Short introduction to Apache Kafka 05:27
28 Apache Kafka as a distributed system 29:40
29 Event-driven architecture 02:29
30 Practice 5 09:19

Similar courses to Building Modern Distributed Systems with Java

Java Test Automation Engineer - from Zero to Hero

Java Test Automation Engineer - from Zero to Heroudemy

Category: Java, Other (QA)
Duration 18 hours 40 minutes 6 seconds
Oracle Java Certification - Pass the Associate 1Z0-808 Exam.

Oracle Java Certification - Pass the Associate 1Z0-808 Exam.udemy

Category: Java
Duration 20 hours 8 minutes 36 seconds
The complete guide to running Java in Docker and Kubernetes

The complete guide to running Java in Docker and Kubernetesudemy

Category: Docker, Java, Kubernetes
Duration 4 hours 39 minutes 16 seconds
Master Spring 6 Spring Boot 3 REST JPA Hibernate

Master Spring 6 Spring Boot 3 REST JPA Hibernateudemy

Category: Spring Boot, Java, Hibernate ORM
Duration 36 hours 15 minutes 18 seconds
Master Spring Boot 3 & Spring Framework 6 with Java

Master Spring Boot 3 & Spring Framework 6 with Javaudemy

Category: React.js, Spring Boot, Java, Hibernate ORM, Maven, Spring, Spring Security
Duration 37 hours 34 minutes 14 seconds
Ultimate Java Part 2: Object-oriented Programming

Ultimate Java Part 2: Object-oriented Programmingcodewithmosh (Mosh Hamedani)

Category: Java
Duration 3 hours 41 minutes 47 seconds
Data Structures in Java

Data Structures in Javajavaspecialists.eu

Category: Java
Duration 8 hours 3 minutes 54 seconds
Spring Security 6 Zero to Master along with JWT,OAUTH2

Spring Security 6 Zero to Master along with JWT,OAUTH2udemy

Category: Java, Spring Security
Duration 14 hours 50 minutes 3 seconds
RabbitMQ : Messaging with Java, Spring Boot And Spring MVC

RabbitMQ : Messaging with Java, Spring Boot And Spring MVCudemy

Category: Spring Boot, Java, Spring Cloud, Spring MVC
Duration 4 hours 3 minutes 11 seconds