知识模块 授课纲要 微服务架构概述 1.微服务架构的定义 微服务架构最主要的两个特征 细粒度的特征 独立性的特征 为什么微服务架构需要独立变更和独立部署 2.微服务架构的剖析 微服务架构介绍 微服务架构的本质与优势 微服务与SOA 微服务的设计原则 基于微服务构建活动实践 3.需求理解与分析 技术选型(Java/SpringBoot/Springloud/REST/HAL/MongoDB) 服务定义与划分 服务支撑组件介绍(服务注册,集中化配置,断路器,服务网关) 思考/练习 微服务应用实践 4.SpringBoot介绍 SpringBoot的核心功能 SpringBootDemo 练习 5.SpringCloud应用实践 SpringCloud介绍 SpringCloud的核心功能 SpringCloudDemo 练习 6.REST/HAL应用实践 REST介绍 HAL介绍 为什么使用HAL HALBrowser实践 7.Docker应用实践 Docker介绍 Docker的常用命令 构建Dockerfile 使用Docker-compose 微服务应用实践 8.构建个微服务 使用Spring-Data-REST实现Event-Service服务 使用HAL完成服务间同步通信 使用HAL-Browser浏览服务接口 使用MongoDB存储数据 使用Docker-compose运行服务 构建Dockerfile 练习 微服务应用实践 9.微服务的集中化配置(centralized-config) 为什么要集中化配置 集中化配置的实现原理与方式 使用SpringCloudConfig实现集中化配置 使用SpringCloudBus与RabbitMQ同步多服务配置 SpringCloudConfigDemo 练习 10.微服务的注册与发现(service-discovery) 为什么要服务注册与发现 服务注册与服务发现的实现方式 使用NetflixEureka/SpringCloud实现服务注册与发现 使用NetflixRibbon/SpringCloud实现客户端负载均衡 使用NetflixFeign/SpringCloud实现申明式REST调用 练习 微服务应用实践 11.微服务的容错处理(circurt-breaker) 微服务下的可用性与故障蔓延(FailureCascading) 断路器模式的原理与实现 使用NetflixHystrix/SpringCloud实现容错 使用NetflixTurbie实现监控聚合 练习 12.构建微服务网关 为什么需要微服务网关 微服务网关的实现方案 使用NetflixZuul实现微服务网关 练习 13.微服务架构与实践总结 微服务的发布与部署 基于微服务的活动报名系统 练习