你将学到什么
Distributed cloud application fundamentals, including Why Cloud Apps? embracing failure, orchestrators, when to split a monolith into microservices, 12-factor services, and when and how to use Containers.
Networking communication, including service scalability and availability, how to define/manage/version service endpoint APIs, and how to perform fault-tolerant network communication.
Messaging communication, including the benefits of messaging with queues and fault-tolerant message processing.
Versioning, Upgrading, and Configuration, including various ways to version your service’s code, how to shut down a service instance gracefully, and how to configure and share secrets with a running service.
Data storage services, including storage service considerations, object/file storage services, relational and non-relational databases, partitioning, replicas, eventual consistency patterns (CQRS, Event sourcing, Saga), concurrency patterns, and data schema versioning.
Disaster recovery, including backup/restore, recovery point and time objectives, as well as Active/Passive and Active/Active architectures.
课程概况
This technology-agnostic course begins by explaining the benefits of distributed cloud applications with an emphasis on maintaining high-availability and scalability in a cost-effective way while also dealing with inevitable hardware and software failures.
The course also cover, Microservices and containers, Networking communication, Messaging communication, Versioning, upgrading and configuration, Data storage services and Disaster recovery.
This course is for anyone considering or actively working on a distributed cloud application. It is designed to provide you with a thorough understanding of these concepts, the various pros and cons of specific technologies, and the resilient patterns that are heavily used by distributed cloud applications. This knowledge will help you to easily build cost-efficient and fault-tolerant systems.
The course contains labs to practice your learning, review questions for self-assessment, and a final exam to validate learning. A score of 70% is required to pass the final exam and receive a certificate for the course.
课程大纲
Welcome to Architecting Distributed Cloud Applications
Before You Start current section
Course Overview
Pre-Course Survey
Module 1 | Distributed Cloud Applications
Distributed Cloud Application Fundamentals
Microservices
Containers
Module 1 Review Questions
Module 2 | Networking Communication
Networking Communication
Service APIs
Fault-Tolerant Network Communication
Module 2 Review Questions
Module 3 | Messaging Communication
Messaging Communication
Module 3 Review Questions
Module 4 | Upgrading, and Configuration
Versioning Service Code
Shutting Down and Reconfiguring Services
Module 4 Review Questions
Module 5 | Leader Election
Leader Election
Module 5 Review Questions
Module 6 | Storage Services
Introduction to Data Storage Services
Object Storage Services
Database Storage Services
Data Consistency
Versioning Data Schemas
Backup, Restore and Disaster recovery
Module 6 Review Questions
Module 7 | Final Exam
Final Exam
Post-Course Survey
预备知识
Students should be familiar with:
Cloud Computing
System architecture and design
A language, such as C# or C++