【培训对象】
软件工程师、架构师、运维工程师等。 学员要求有一定的J2EE开发经验,熟悉eclipse等开发工具的使用,熟悉Linux环境下常用命令、软件安装、部署。
【课程描述】
本课程从架构的演变历程开始分析,为什么终会演变成微服务架构。接着介绍微服务的架构描述和特性。过程中通过Dubbo与Spring Cloud两大主流的微服务解决方案为例进行对比,剖析微服务架构的各大组件。
课程将通过实例演示和动手实践相结合的方式来强化学员对课程知识的掌握,并快速的转化为实战技能应用到企业的日常工作当中。
【课程内容】
传统单体架构及其面临的挑战
传统单体架构分析
单体架构的优势
单体架构局限性与面临的挑战
复杂性
开发效率
稳定性
部署与运维成本
新功能交付
扩展能力
如何解决上述问题?
【案例】结合某案例分析传统单体架构面临问题
单体架构拆分
服务水平拆分
服务水平拆分面临问题
服务垂直拆分
服务拆分之后各模块间通信与交互
服务的设计原则
复用性
耦合性
服务编排
自治
无状态
自动发现
服务拆分后面临挑战
调用性能
线性扩展
服务监控
故障定位
日志搜索
流控
微服务架构综述
什么是微服务?
微服务架构优点
微服务架构面临的挑战有哪些?
微服务生命周期与交付流程
微服务管理规范
微服务框架对比
微服务架构及常用组件
微服务开发之Dubbo
Dubbo介绍与诞生背景
为什么选择Dubbo?
Dubbo架构剖析
Dubbo优缺点分析
Dubbo调用地址与负载均衡
Dubbo高可用机制
Dubbo管控台与监控
【案例】基于Dubbo的项目应用案例分析
微服务之Spring Cloud
Spring Cloud定义
Spring Cloud生态子项目剖析
Spring Cloud特点
微服务开发之Spring Boot
SpringBoot诞生背景介绍
SpringBoot适应场景
SpringBoot优势
SpringBoot的包版本管理
SpringBoot自动配置
SpringBoot热部署机制
如何自定义配置参数?
外部化配置
多环境配置
Spring Boot常用注解
Spring Boot发布之jar与war
生产级特性
外部配置
监控
【实战】使用SpringBoot快速构建RESTful API应用
微服务之注册中心
服务调用端与服务提供端之间透明通信
如何实现服务的动态注册与发现
注册中心引入
注册中心之zookeeper
注册中心底层实现剖析
SpringCloud之注册中心Eurka
Eurka介绍与原理分析
【实战】实现将微服务注册到EurkaServer上
微服务之负载均衡
负载均衡应用场景
常用的负载均衡实现方案
客户端负载均衡
服务端负载均衡
【实战】使用Ribbin实现客户端负载均衡
微服务之容错处理
雪崩效应场景分析
如何应对雪崩效应下的容错处理
Spring Cloud体系下之容错处理解决方案断路器Hystrix
应用如何接入Hystrix
如何监控Hystrix状态
【实战】实现Hystrix Dashboard可视化监控数据
微服务之网关
微服务网关定义
微服务网关引入能解决什么问题
SpringCloud之微服务网关zuul
如何编写zuul微服务网关
zuul过滤器的应用
zuul的容错与回退处理
【实战】使用zuul聚合微服务
微服务之配置中心
服务配置中心介绍与应用场景分析
微服务配置之Ansible
如何管理微服务中的配置
Spring Cloud下之微服务配置解决方案Spring Cloud Config
Config Server与Config Client的实现
Config Server仓库配置与应用流程
如何实现配置端点的刷新
如何确保配置中心内容的安全性?
如何实现配置刷新后自动下发?
【实战】使用Spring Cloud Config打造微服务配置中心
微服务之封装
容器化技术
Docker简介
Docker架构剖析
虚拟机与Docker的对比
Docker的优点
Docker安装系统要求
Docker的安装与卸载
Docker镜像常用命令
Docker容器常用命令
如何配置Docker镜像地址
Docker镜像下载与构建
使用Docker Registry打造私有镜像仓库
微服务部署
持续集成
Jenkins简介
使用Jenkins实现自动化发布
搭建版本控制系统
搭建Jenkins持续集成系统
持续集成实现自动化构建
微服务日志
为什么需要搭建应用日志中心
开源日志中心ELK介绍
日志存储系统之Elasticsearch
日志收集系统之Logstash
日志查询系统之Kibana
ELK日志中心搭建
微服务监控
Spring Boot自带的开源监控系统Spring Boot Admin
自主搭建系统监控中心
分布式调用链中心
开源调用链中心Zipkin
微服务调用链追踪
Spring Cloud Sleuth简介
Spring Cloud Sleuth与Zipkin结合应用
微服务之异步化
使用MQ实现异步调用
分布式事务解决方案剖析
Spring Cloud Bus的应用
【实战】使用Spring Cloud Bus实现配置的自动刷新
微服务测试
Spring Boot单元测试
Service层测试
REST API测试
【综合案例】某大型的跨境电商项目
【综合案例】某服务治理平台
总结、回顾、答疑
【课程导师】
陈国星
研发迭代领域专家,创业团队管理领域专家,阿里云企业级互联网架构师,阿里云受邀讲师,大数据架构研究者,网络安全领域专家,曾服务于某大型互联网公司任安全事业部经理,