Distributed Systems & Cloud Computing with Java
- Descrição
- Currículo
- FAQ
- Revisões
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
-
JSON
-
Java HTTP Server and Client
-
Protocol Buffers
-
Google Cloud Platform
-
And many others
By the end of the course you will:
-
Apply best practices for building and architecting real-life Distributed Systems
-
Scale your Distributed System to handle billions of transactions per day
-
Deploy your distributed application on the Cloud
-
Choose the right technologies for your use case and Software Architecture
-
Use modern Java based techniques to store and handle large amounts of data
So what are you waiting for?
Join us today on this incredible journey!
FAQ
– What do I need to know to join the course?
Basic knowledge of Java will suffice. Knowing the fundamentals of Multithreading and Concurrency may help but is not required.
– Will this course help me in System Design Interviews?
Yes. Distributed Systems questions are frequently asked during System Design Interviews, especially by large companies that operate on a massive scale. The skills you will learn in this course will help you in your career both while interviewing and working on real projects
– Do I need to pay for any software or Cloud account?
No. All the technologies covered in the course are free and open-source. The lectures on the cloud don’t require you to pay for anything. If you want to follow along, all cloud vendors provide free-tier accounts to play around with and practice for free. Please follow the specific cloud vendor’s documentation for guidance.
– Can I run and develop a Distributed System locally on my personal computer?
Yes. You can develop and run a distributed system on your computer and you don’t need to buy any additional hardware. Generally, most distributed computing development is done on a single computer before it goes to QA and production.
– Is this the right course for me if I want to become a Software Architect or Technical Lead?
Yes. This is the right place for you to gain practical Software Architecture and Distributed Computing skills to become a Software Architect and Technical Lead. Thanks to the advancement of Cloud Computing, most companies today run distributed systems and deploy them on the cloud. So the skills taught in this course are critical to being a successful Software Architect in the modern era.
-
2Introduction to Cluster Coordination & Theory of Leader ElectionVídeo Aula
-
3Introduction to Cluster Coordination & Theory of Leader ElectionQuestionário
-
4Zookeeper Server and Client (Download and Setup)Vídeo Aula
-
5Important: Apache Zookeeper - Installation and Troubleshooting InstructionsTexto
-
6Zookeeper Client Threading Model & Zookeeper Java APIVídeo Aula
-
7Important Tips for Debugging Applications with ZookeeperTexto
-
8Apache Zookeeper FundamentalsQuestionário
-
9Leader Election ImplementationVídeo Aula
-
10Watchers, Triggers and Introduction to Failure DetectionVídeo Aula
-
11Leader Reelection ImplementationVídeo Aula
-
12Practice - Cluster Auto-healer using ZookeeperTexto
-
15Introduction to Network Communication - OptionalVídeo Aula
-
16HTTP for Communication in Distributed SystemsVídeo Aula
-
17HTTPQuestionário
-
18HTTP Server - Implementation & Custom HeadersVídeo Aula
-
19HTTP Client - Implementation & Network Packet AnalysisVídeo Aula
-
20Message Delivery Semantics in Distributed SystemsVídeo Aula
-
21Message Delivery Semantics in Distributed SystemsQuestionário
-
22Complex Data Delivery - Serialization & DeserializationVídeo Aula
-
23Introduction to TF-IDFVídeo Aula
-
24Implementation of TF-IDFVídeo Aula
-
25Parallel TF-IDF & System ArchitectureVídeo Aula
-
26Worker Node Implementation - Distributed Search Part 1Vídeo Aula
-
27Search Cluster Coordinator - Distributed Search Part 2Vídeo Aula
-
28Search Web Application - Distributed Search Part 3Vídeo Aula
-
29Introduction To Load BalancersVídeo Aula
-
30Load Balancing Strategies & AlgorithmsVídeo Aula
-
31Load Balancing in Distributed SystemsQuestionário
-
32Load Balancing Networking LayersVídeo Aula
-
33Load Balancing Networking LayersQuestionário
-
34HAProxy - Load Balancing in PracticeVídeo Aula
-
35HAProxy with Docker - Running HAProxy on any PlatformVídeo Aula
-
36Introduction to Message BrokersVídeo Aula
-
37Introduction to Message BrokersQuestionário
-
38Apache Kafka - IntroductionVídeo Aula
-
39Apache Kafka as a Distributed SystemVídeo Aula
-
40Apache KafkaQuestionário
-
41Apache Kafka - Building a Kafka Cluster in PracticeVídeo Aula
-
42Apache Kafka - Kafka Producer with JavaVídeo Aula
-
43Apache Kafka - Building Kafka Consumers, Scalability and Pub/SubVídeo Aula
-
44Distributed Banking System - PracticeTexto
-
45Distributed Banking System - SolutionTexto
