4.65 out of 5
4.65
1218 reviews on Udemy

Distributed Systems & Cloud Computing with Java

Learn Distributed Java Applications at Scale, Parallel Programming, Distributed Computing & Cloud Software Architecture
Instructor:
Michael Pogrebinsky
8,886 students enrolled
English
Design and build massively Parallel Java Applications and Distributed Algorithms at Scale
Create efficient Cloud-based Software Systems for Low Latency, Fault Tolerance, High Availability and Performance
Master Software Architecture designed for the modern era of Cloud Computing
Globally deploy Distributed Programs on the Cloud serving millions of users, billions of requests, & petabytes of data

Have you always wanted to build software that reaches millions of users and impact people’s lives?

Have you been wondering how modern companies

  • Handle massive amount of internet traffic and transactions?

  • Securely store billions of our photos, videos and other data?

  • Provide impeccable user experience and high performance 24/7 all around the globe?

Then you are in the perfect place!

In this course you will:

  • Master the theory of Distributed Systems, Distributed Computing and modern Software Architecture

  • Gain the practical skills necessary to build Distributed Applications and Parallel Algorithms, focusing on Java based technologies

  • Deploy groups of distributed Java applications on the Cloud

  • Scale Distributed Databases to store petabytes of data

  • Build Highly Scalable and Fault Tolerant Distributed Systems

Along the way you will learn modern technologies like:

  • Apache Kafka

  • Apache Zookeeper

  • MongoDB

  • HAProxy

  • Google Cloud Platform

  • JSON

  • Java HTTP Server and Client

  • Protocol Buffers

  • Google Cloud Platform

  • And many others

So what are you waiting for?

Join us today on this incredible journey!

Introduction to Distributed Systems

1
Introduction and Motivation

Cluster Coordination Service and Distributed Algorithms

1
Introduction to Cluster Coordination & Theory of Leader Election
2
Introduction to Cluster Coordination & Theory of Leader Election
3
Zookeeper Server and Client (Download and Setup)
4
Important: Apache Zookeeper - Installation and Troubleshooting Instructions
5
Zookeeper Client Threading Model & Zookeeper Java API
6
Important Tips for Debugging Applications with Zookeeper
7
Apache Zookeeper Fundamentals
8
Leader Election Implementation
9
Watchers, Triggers and Introduction to Failure Detection
10
Leader Reelection Implementation
11
Practice - Cluster Auto-healer using Zookeeper

Cluster Management, Registration and Discovery

1
Introduction to Service Registry & Service Discovery
2
Service Registry & Discovery - Implementation

Network Communication

1
Introduction to Network Communication - Optional
2
HTTP for Communication in Distributed Systems
3
HTTP
4
HTTP Server - Implementation & Custom Headers
5
HTTP Client - Implementation & Network Packet Analysis
6
Message Delivery Semantics in Distributed Systems
7
Message Delivery Semantics in Distributed Systems
8
Complex Data Delivery - Serialization & Deserialization

Building Distributed Document Search

1
Introduction to TF-IDF
2
Implementation of TF-IDF
3
Parallel TF-IDF & System Architecture
4
Worker Node Implementation - Distributed Search Part 1
5
Search Cluster Coordinator - Distributed Search Part 2
6
Search Web Application - Distributed Search Part 3

Load Balancing

1
Introduction To Load Balancers
2
Load Balancing Strategies & Algorithms
3
Load Balancing in Distributed Systems
4
Load Balancing Networking Layers
5
Load Balancing Networking Layers
6
HAProxy - Load Balancing in Practice
7
HAProxy with Docker - Running HAProxy on any Platform

Distributed Message Brokers

1
Introduction to Message Brokers
2
Introduction to Message Brokers
3
Apache Kafka - Introduction
4
Apache Kafka as a Distributed System
5
Apache Kafka
6
Apache Kafka - Building a Kafka Cluster in Practice
7
Apache Kafka - Kafka Producer with Java
8
Apache Kafka - Building Kafka Consumers, Scalability and Pub/Sub
9
Distributed Banking System - Practice
10
Distributed Banking System - Solution

Distributed Storage & Databases

1
Introduction to Distributed Storage
2
Database Sharding
3
Data Sharding
4
Dynamic Sharding with Consistent Hashing
5
Dynamic Sharding with Consistent Hashing
6
Database Replication, Consistency Models & Quorum Consensus

Scaling a Real Database - Distributed MongoDB

1
Introduction to MongoDB
2
Scaling MongoDB using Data Replication - Introduction
3
Launching a Replication Set in Distributed MongoDB
4
Scaling MongoDB using Data Sharding - Introduction
5
Launching a Sharded Distributed MongoDB

Cloud Computing and Deployment at Global Scale

1
Introduction to Cloud Computing
2
Cloud Deployment in Practice - Compute Instances and Templates
3
Instance Groups, Autoscaling and Auto-healing
4
Multi-Region Deployment and Global Load-balancing

Bonus Material

1
Bonus - Other Courses Links and Coupons
You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.7
4.7 out of 5
1218 Ratings

Detailed Rating

Stars 5
720
Stars 4
375
Stars 3
90
Stars 2
12
Stars 1
21
30-Day Money-Back Guarantee

Includes

7 hours on-demand video
6 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion
Distributed Systems & Cloud Computing with Java
Price:
$218.98 $169

Community

For Professionals

For Businesses

We support Sales, Marketing, Account Management and CX professionals. Learn new skills. Share your expertise. Connect with experts. Get inspired.

Community

Partnership Opportunities

Layer 1
samcx.com
Logo
Register New Account
Compare items
  • Total (0)
Compare
0