简介
课程系统讲解微服务架构系统的核心组件和领域驱动设计的运用全过程,包括领域驱动设计分析、组件拆解、数据库模型设计、API接口设计、文档版本管理、服务发现、配置管理、性能监控等。同时结合Kubernetes集群的特性帮助学员快速掌握微服务架构落地容器化的技术,帮助客户快速开展云上业务应用。
目标
1、学员将全面了解微服务架构的基本概念,
2、梳理清楚微服务应用实践的核心模块,
3、会灵活运用容器技术与容器集群管理微服务组件,
4、并能够使用Kubernetes来完成企业级别微服务容器化的转型和落地实施。
课程时长
2天(12H)
受众人群
架构总监,架构经理,企业架构师,解决方案架构师 需要深入了解企业架构的技术人员。熟练使用Java,至少一年业务开发实际工作经验。
课程提纲
第一天 | 一、微服务架构概述 | 1.1 微服务架构定义 1.2 微服务架构的优点和缺点 1.3 微服务应用领域模型介绍和业务拆分(实战:业务领域模型分析和业务拆分沙盘演练) 1.4 微服务应用内部服务通信机制分析 1.5 微服务下的数据一致性处理分析 1.6 微服务与SOA的架构对比区分 1.7 微服务架构落地难点分析 |
二、典型架构设计参考 | 2.1 基于SpringCloud的微服务架构(实战:依据银行互联网营销案例设计微服务架构沙盘演练) 2.1.1 API网关的模块设计 2.2 基于消息队列的微服务架构设计 2.2.1 RabbitMQ消息中间件的模块设计 2.3 基于服务网格的微服务架构设计 2.3.1 服务网格的定义 2.3.2 服务网格对微服务架构的模式设计增强 2.3.3 服务网格组件功能的裁剪设计 2.4 服务支撑组件介绍 2.4.1 服务注册组件的设计和实现 2.4.2 配置中心组件的设计和实现 2.4.3 API网关的设计和实现 2.4.4 认证和授权组件的设计和实现 2.4.5 限流/熔断/降级的设计和实现 2.4.6 分布式追踪组件的设计和实现 2.4.7 消息总线的设计和实现 2.4.8 REST/RPC/序列化设计和实现 2.5 微服务的安全架构设计 2.5.1 用户间认证和鉴权设计 2.5.2 服务间认证和鉴权设计 2.5.3 边界外部系统访问控制设计 | |
三、主流开源框架组件软件介绍 | 3.1 SpringCloud微服务开源框架组件介绍 3.3 Istio/ Linkerd开源服务网格组件介绍 | |
第二天 | 四、微服务架构体系设计 | 4.1 微服务平台标准设计 4.1.1 基础设施层能力设计 4.1.2 微服务框架能力设计 4.1.3 增强特性指标设计 4.1.4 公共基础服务能力设计 4.1.5 管理平台的能力设计 4.1.6 性能和安全能力设计 4.1.7 业务基础信息及服务完备规范的设计 4.2微服务架构中职能团队划分设计 4.3微服务的拆分方法论设计 4.4微服务的网关规范设计 4.5微服务通信方式的设计与选择 4.6微服务的全链路监控规范设计 4.7微服务应用运维日志监控体系设计 |
五、服务治理中心体系设计(实战:依据银行互联网业务设计服务治理中心沙盘演练) | 5.1 命名服务 服务注册;服务自动发现 5.2 服务管理 服务状态监测;服务启动、停止;服务负载均衡 5.3 容错处理 实时屏蔽异常的服务,自动调配请求流量 5.4 流量分发 灰度发布、节点动态流量分配等场景 5.5数据可视化 服务调用统计上报分析,提供清晰的数据图表展示,清晰了解服务间依赖关系 5.6服务分组 支持服务动态自动归组与不同场景下的自定义分组,解决在多机房场景下跨机房调用穿透、Sandbox等问题 5.7服务监控报警 支持服务与接口级别多指标、多维度的监控,支持多种报警方式 5.8统一配置管理 支持服务配置统一管理,灵活设置不同环境间差异,支持历史版本,配置项变更后实时下发 5.9分布式服务跟踪 轻松诊断服务访问慢、异常抖动等问题 5.10过载保护 灵活定义服务消费者的配额,当其调用量超出最大阀值时,基于不同服务消费者进行QoS区分,触发过载保护。 5.11服务访问控制 | |
六、服务网格架构设计参考 | 6.1 Envoy Proxy代理服务实践 6.2 使用Istio搭建服务网格实践 6.3 使用Linkred搭建服务网格实践 |