微服务架构最佳实践与案例分析
Mace Liu 查看讲师
百林哲咨询(北京)有限公司专家团队成员
曾任职BEA(中国)资深软件架构师,十余年的企业软件架构、开发和管理经验, 侧重于企业应用软件架构设计.主要负责客户大型项目的架构设计和研发。
浏览:791次
详情 DETAILS

课程简介

随着 RESTful、云计算、DevOps、持续交付等概念的深入人心,微服务架构逐渐成为系统架构的一个代名词。我们经历了从微服务的理论认识,到小范围实践、迭代,再到多个基于微服务构建的项目已经成功上线的过程将复杂的业务支撑系统逐渐演进为基于微服务架构的系统大幅度提升系统灵活性可伸缩性以及对团队应对变化能力

鉴于此,本课程从实践的角度出发,首先阐述了单块架构存在的弊端以及微服务的理论基础。接着通过实践部分,让读者能够体验从零开始搭建第一个微服务的过程,包括代码静态检查、基础设施构建、 Docker映像构建及部署、持续交付流水线、服务的日志聚合以及监控和告警。随后,探讨在微服务的实践过程中所积累的经验,包括基于 HAL的通信机制、消费者驱动的测试,并通过一个真实的案例,帮助读者更好地理解微服务架构所带来的灵活性、易扩展性和独立性。

课程收益

1、帮助学员深入理解微服务架构核心原理和设计过程

2、帮助学员掌握微服务架构设计开发技巧

3、助力企业培养成熟的架构设计师

受众人群

架构师、运维工程师、测试工程师、软件设计师及对系统的设计、开发、部署、测试和运维感兴趣的人员

课程周期

3天(18H

课程大纲

标题

授课内容

一、微服务架构概述

1. 微服务架构诞生—为什么出现微服务架构

(1) 单块架构及其面临的挑战

(2) 分层应用架构

(3) 单块架构特点

(4) 单块架构面临的挑战

(5) 通过某传统ERP系统为案例分析上线后问题

2. 微服务架构

(1) 为什么需要微服务架构

(2) 如何解决传统应用架构的问题

(3) 微服务架构是什么

(4) 微服务架构概念

(5) 微服务架构参考架构模式

(6) 通过分析多个微服务架构案例,了解微服务架构的参考模式

二、微服务架构—服务分解和建模

1. 微服务分解和服务颗粒度

(1) 微服务架构构成(服务拆分、服务拓扑关系图);

(2) 微服务架构设计原则;

(3) 微服务架构服务粒度设计;

(4) 微服务架构之我们的实践案例;

(5) 通过大量项目案例分析,什么是好的服务,服务的分解和服务颗粒度

2. 微服务建模

(1) 如何建模服务

(2) 什么样的服务是好服务

(3) 微服务的松耦合和高内聚

(4) 微服务限界上下文

(5) 微服务的业务功能

(6) 逐步划分服务上下文

(7) 微服务与业务概念

(8) 微服务技术边界

(9) 通过案例分析微服务建模

三、微服务架构设计开发实现—基于SpringBoot 3.x

1. 微服务架构开发实现---SpringBoot

(1) Spring Boot概述

(2) 运用Spring Boot

(3) Groovy与Spring Boot CLI

(4) Spring Boot中使用Grails

(5) 深入Actuator

(6) 部署Spring Boot应用程序

(7) Spring Boot 的数据访问

(8) Spring Boot 企业级开发

(9) Spring Boot 开发部署与测试

(10) 多个基于SpringBoot实际项目的架构分析(为何这样设计/优点/缺点/当初的考虑)

2. 基于SpringBoot3.x 开发实战

(1) 传统Web前端设计

(2) Spring Boot 3.x Web开发

(3) Spring Boot+SSM实战

(4) Spring Boot特性与原理

(5) 持久层发展与Spring Data JPA

(6) SpringBoot缓存与Redis

(7) 认证、授权与Spring Security

(8) SpringBoot RESTful与接口文档

四、基于Spring Security实战

1. 什么是软件安全性   

2. 安全性为什么重要  

3. Web应用程序中的常见安全漏洞

4. Spring Security的定义与用途

5. Spring Security中实现身份验证

6. 密码处理-理解PasswordEncoder契约

7. Spring Security Crypto模块的更多知识

8. 实现身份验证-理解AuthenticationProvider

9. 动手实践:一个小型且安全的Web应用程序

10. 配置权限:限制访问  

11. 配置权限:应用限制  

12. Spring Security架构中实现过滤器

13. OAuth 2的运行机制

14. OAuth 2身份验证架构的组件

15. OAuth 2:实现授权服务器

16. OAuth 2:实现资源服务器   

17. 全局方法安全性:预过滤和后过滤

18. Spring Security测试

五、基于SpringCloud 平台

1. 云计算平台架构

2. 为什么选择Spring Cloud

3. 服务治理:Spring Cloud Nacos

4. 客户端负载均衡:Spring Cloud LoadBalancer

5. 服务容错保护:Spring Cloud Alibaba Sentinel

6. 声明式服务调用:Spring Cloud Feign

7. 分布式配置中心:Spring Cloud Config

8. 消息总线:Spring Cloud Bus

9. 多个基于SpringBoot和SpringCloud云架构,谈微服务和云架构

六、基于SpringCloud Alibaba Nacos

1. 为什么要服务注册

2. 服务注册实现方式

3. 分布式服务治理

4. 分布式注册中心

5. 服务注册原理

6. 服务订阅原理

7. 分布式注册Nacos

8. 将应用接入Nacos注册中心

9. 使用Ribbon+Nacos Client实现负载均衡

10. 使用CP和AP模式保持注册中心数据一致性

11. 用缓存和文件存储Nacos元数据

12. Nacos Sync实现应用服务的数据迁移

13. 对比Nacos,ZooKeeper,Eureka,Consul使用Spring和Netflix Eureka进行服务发现实战

七、基于Spring Cloud LoadBalancer

1. 负载均衡

2. 容错

3. 服务路由

4. Spring Cloud LoadBalancer实现

5. Health-Check Load-Balancing

6. Same-Instance Load-Balancing

7. Request-based Sticky Session Load-Balancing

8. Hint-based Load-Balancing

9. ReactorLoadBalancerExchangeFilterFunction

10. RestTemplate中使用Spring Cloud LoadBalancer

11. 微服务间的异步通信机制

12. 切换负载均衡算法

13. Spring Cloud LoadBalancer Caching


企业服务热线:400-106-2080
电话:18519192882
投诉建议邮箱:venus@bailinzhe.com
合作邮箱:service@bailinzhe.com
总部地址:
北京市-丰台区-汽车博物馆东路6号3号楼1单元902-B73(园区)
全国客户服务中心:
天津市-南开区-桂苑路15号鑫茂集团鑫茂军民园1号楼A座802-803
公众号
百林哲咨询(北京)有限公司 京ICP备2022035414号-1