Course Code: microaws
Duration: 21 hours

Prerequisites:

学员应具备以下条件:

  • 具备Python初级至中级开发经验
  • 了解REST API、HTTP及Web应用概念
  • 熟悉Linux命令行工具和Git
  • 建议具备Docker及容器化概念的基础知识,但非强制要求
  • 熟悉云计算概念及AWS服务将有助于学习

Overview:

本课程旨在介绍如何在Amazon Web Services(AWS)上设计、构建、部署和管理云原生微服务。学员将深入探讨微服务架构原则、基于Docker的开发、事件驱动通信以及异步消息机制,并学习使用Amazon SQS、SNS和EventBridge等服务实现相关功能。

课程涵盖微服务完整生命周期,包括使用Amazon ECS和AWS Lambda进行部署,通过Amazon API Gateway管理API,利用CloudWatch、AWS X-Ray和OpenTelemetry实现可观察性,以及掌握安全、CI/CD和基础设施即代码(IaC)等核心概念。通过动手实操练习,学员将构建并连接分布式服务,积累在现代微服务架构中应用AWS核心技术的实践经验。

Course Outline:

微服务架构简介

  • 什么是微服务?
  • 微服务的优势与挑战
  • 与单体架构的对比

配置AWS Cloud9用于微服务开发 — 快速设置

  • 创建AWS Cloud9环境
  • 配置开发环境
  • 将AWS服务连接到Cloud9

使用Docker构建微服务

  • Docker与容器化简介
  • 构建和测试Docker容器
  • 使用Docker Compose管理多容器应用
  • 动手练习:在本地构建多容器应用

事件驱动架构与异步消息

  • 事件驱动架构原则,同步与异步通信对比
  • 使用Amazon SQS实现基于队列的消息传递
  • 使用Amazon SNS实现发布/订阅消息
  • 使用Amazon EventBridge进行事件路由和分发
  • Kafka和Amazon MSK作为高吞吐流处理的替代方案 — 仅概述,可选内容
  • 动手练习:使用SQS和SNS实现两个服务间的异步通信,随后扩展EventBridge路由

在AWS上部署微服务(ECS、Lambda和EKS)

  • 配置Amazon ECS进行容器编排
  • 使用AWS Lambda部署微服务
  • Kubernetes和Amazon EKS作为替代编排方案简介 — 仅概述,与ECS对比
  • 微服务架构中的服务发现
  • 在AWS中扩展微服务
  • 动手练习:在ECS上部署并与EKS设置进行对比

使用AWS API Gateway管理API

  • 创建和管理RESTful API
  • 将API连接到微服务
  • API版本控制和限流
  • 动手练习:通过API Gateway暴露微服务并实施版本控制

可观察性、监控、日志记录与分布式追踪

  • 使用AWS CloudWatch进行监控
  • 配置Amazon CloudWatch Logs日志记录
  • 实施报警和通知
  • 分布式追踪概念
  • 使用AWS X-Ray进行请求追踪
  • 使用OpenTelemetry实现独立于供应商的仪表化
  • 动手练习:使用X-Ray和OpenTelemetry对微服务进行仪表化,并追踪跨服务的请求

CI/CD与基础设施即代码

  • 微服务的CI/CD流水线概念
  • Terraform基础设施配置概述

微服务安全最佳实践

  • 实施IAM角色和策略
  • 使用API Gateway保护微服务安全
  • 加密传输中和静态数据

Sites Published:

United Arab Emirates - Microservices on AWS (with Python)

Qatar - Microservices on AWS (with Python)

Egypt - Microservices on AWS (with Python)

Saudi Arabia - Microservices on AWS (with Python)

South Africa - Microservices on AWS (with Python)

Brasil - Microserviços no AWS (com Python)

Canada - Microservices on AWS (with Python)

中国 - AWS上的微服务(结合Python)

香港 - Microservices on AWS (with Python)

澳門 - Microservices on AWS (with Python)

台灣 - AWS上的微服務(搭配Python)

USA - Microservices on AWS (with Python)

Österreich - Microservices auf AWS (mit Python)

Schweiz - Microservices auf AWS (mit Python)

Deutschland - Microservices auf AWS (mit Python)

Czech Republic - Mikroslužby na AWS (s Pythonem)

Denmark - Microservices on AWS (with Python)

Estonia - Microservices on AWS (with Python)

Finland - Microservices on AWS (with Python)

Greece - Microservices σε AWS (με Python)

Magyarország - Microservice-ek az AWS-en (Python használatával)

Ireland - Microservices on AWS (with Python)

Luxembourg - Microservices on AWS (with Python)

Latvia - Microservices on AWS (with Python)

España - Microservicios en AWS (con Python)

Italia - Microservizi su AWS (con Python)

Lithuania - Microservices on AWS (with Python)

Nederland - Microservices op AWS (met Python)

Norway - Mikrotjenester på AWS (med Python)

Portugal - Microserviços no AWS (com Python)

România - Microservices pe AWS (cu Python)

Sverige - Mikrotjänster på AWS (med Python)

Türkiye - AWS Üzerinde Mikro Hizmetler (Python ile)

Malta - Microservices on AWS (with Python)

Belgique - Microservices sur AWS (avec Python)

France - Microservices sur AWS (avec Python)

日本 - AWSでのマイクロサービス(Python使用)

Australia - Microservices on AWS (with Python)

Malaysia - Microservices on AWS (with Python)

New Zealand - Microservices on AWS (with Python)

Philippines - Microservices on AWS (with Python)

Singapore - Microservices on AWS (with Python)

Thailand - Microservices on AWS (with Python)

Vietnam - Microservices trên AWS (với Python)

India - Microservices on AWS (with Python)

Argentina - Microservicios en AWS (con Python)

Chile - Microservicios en AWS (con Python)

Costa Rica - Microservicios en AWS (con Python)

Ecuador - Microservicios en AWS (con Python)

Guatemala - Microservicios en AWS (con Python)

Colombia - Microservicios en AWS (con Python)

México - Microservicios en AWS (con Python)

Panama - Microservicios en AWS (con Python)

Peru - Microservicios en AWS (con Python)

Uruguay - Microservicios en AWS (con Python)

Venezuela - Microservicios en AWS (con Python)

Polska - Microserwisy na AWS (z wykorzystaniem Pythona)

United Kingdom - Microservices on AWS (with Python)

South Korea - AWS에서 마이크로서비스 구현 (Python 활용)

Pakistan - Microservices on AWS (with Python)

Sri Lanka - Microservices on AWS (with Python)

Bulgaria - Microservices на AWS (с Python)

Bolivia - Microservicios en AWS (con Python)

Indonesia - Microservices on AWS (with Python)

Kazakhstan - Microservices on AWS (with Python)

Moldova - Microservices pe AWS (cu Python)

Morocco - Microservices on AWS (with Python)

Tunisia - Microservices on AWS (with Python)

Kuwait - Microservices on AWS (with Python)

Oman - Microservices on AWS (with Python)

Slovakia - Microservices on AWS (with Python)

Kenya - Microservices on AWS (with Python)

Nigeria - Microservices on AWS (with Python)

Botswana - Microservices on AWS (with Python)

Slovenia - Microservices on AWS (with Python)

Croatia - Microservices on AWS (with Python)

Serbia - Microservices on AWS (with Python)

Bhutan - Microservices on AWS (with Python)

Nepal - Microservices on AWS (with Python)

Uzbekistan - Microservices on AWS (with Python)

US Government - Microservices on AWS (with Python)