课程介绍
作为一种新的设计和架构理念,微服务自2014年首次提出就引发了业界激烈的讨论。同时,Docker技术的迅速发展,也让微服务架构的实施变得更加容易。相比于传统的单体式应用而言,微服务这种分而治之、化大为小、互相连接的设计理念不仅能让复杂应用的构建变得更加灵活,更能帮助创业企业在面对市场的高度不确定性时,快速推出新产品,低成本试错。那么,企业究竟该如何去设计、开发和部署微服务到自己的业务中去?如何做好服务发现和服务治理呢?
课程特色
1. 理论与实践相结合、案例分析与行业应用穿插进行;
2. 专家精彩内容解析、学员专题讨论、分组研究;
3. 通过全面知识理解、专题技能演示和实践引导学员掌握课程内容。
课程目标
系统全面地了解和学习微服务架构的设计、云计算与大数据基础平台及原生云应用开发方法等
1.学习掌握微服务架构的概念与本质
2.使用Spring Boot/SpringCloud构建企业微服务支撑组件、微服务体系
3.使用Docker发布服务
4.使用DockerCompose在开发环境中运行多个服务
5.学习掌握微服务的测试策略与PACT测试
6.学习掌握微服务的安全机制
7.学习掌握微服务间的异步通信机制
8.学习了解微服务的监控与告警
9.学习掌握微服务架构的日志聚合
10.构建企业持续交付流水线
课程目标
第一天上午 微服务架构概述
1.微服务架构的定义
微服务架构最主要的两个特征
细粒度的特征
独立性的特征
为什么微服务架构需要独立变更和独立部署
2.微服务架构的剖析
微服务架构介绍
微服务架构的本质与优势
微服务与SOA
微服务设计原则
微服务架构常用手段
微服务划分方法
第一天下午 基于微服务构建活动实践
3.需求理解与分析
技术选型如何做?
微服务定义与划分
服务支撑组件介绍(服务注册,集中化配置,断路器,服务网关)
思考/练习
第二天上午 微服务应用实践
4.SpringBoot是什么
SpringBoot的核心功能
SpringBootDemo
练习
5.SpringCloud应用实践
SpringCloud介绍
SpringCloud的核心功能
SpringCloudDemo
练习
6.REST/HAL应用实践
REST介绍
HAL介绍
为什么使用HAL
HALBrowser实践
7.Docker应用实践
Docker是什么
Docker常用命令
构建Dockerfile
Docker Compose是什么
使用Docker Compose快速交付微服务系统
第二天下午 微服务应用实践
8.构建微服务
使用SpringDataREST实现Event-Service服务
使用HAL完成服务间同步通信
使用HAL-Browser浏览服务接口
使用MongoDB存储数据
使用Docker-compose运行服务
编写Dockerfile并构建镜像
练习
第三天上午 微服务应用实践
9.微服务的集中化配置(centralized-config)
为什么要集中化配置
集中化配置的实现原理与方式
使用SpringCloudConfig实现集中化配置
SpringCloudConfigDemo
练习
10.微服务的注册与发现(service-discovery)
为什么要实现服务注册与发现
服务注册与服务发现的实现方式
服务发现原理剖析
使用Eureka实现服务注册与发现
使用SpringCloudLoadBalancer实现客户端负载均衡
使用Feign实现声明式REST调用
练习
第三天下午 微服务应用实践
11.微服务的容错处理(circurt-breaker)
微服务下的可用性与雪崩效应(CascadingFailure)
高并发容错机制思路与实现
使用Hystrix实现容错
使用Turbie实现监控聚合
练习
12.构建微服务网关
为什么需要微服务网关
微服务网关的实现方案
使用Spring Cloud Gateway实现微服务网关
自己研发网关的思路与时间
练习
13. 微服务架构与实践总结
微服务的发布与部署
技术趋势展望与未来如何继续深耕
课程总结
练习