2019独角兽企业重金招聘Python工程师标准>>>
(StuQ 微服务技能图谱)
2课程简介
本课程分为基础篇和高级篇两部分,旨在通过完整的案例,呈现微服务的开发、测试、构建、部署、运维等实践,帮助学员了解微服务的核心、以及实施过程中的挑战与应对方案。
基础篇将使用Spring Boot、Spring Cloud以及Docker,构建基于微服务架构的活动报名系统。同时,使用Netflix OSS构建服务的支持组件,包括集中化配置中心、服务注册与发现、API网关、容错处理等支撑性服务组件。
高级篇将关注微服务的测试,服务安全、异步任务系统、日志聚合、监控告警以及持续交付流水线等高级话题,为微服务规模化实施提供指导意见。
3适用人群
-
有1年以上的Java编程经验
-
熟悉Spring框架
-
了解Gradle构建工具
-
了解持续集成实践
-
对微服务架构实践感兴趣
4教学目标
通过本课程,您不仅能了解微服务架构的本质,也将学习到如何使用Spring Boot、Spring Cloud 构建微服务系统(包括REST/HAL、服务注册、服务发现、容错处理、API网关、中心化配置以及服务的安全处理等);同时,也将学习如何建立完整的微服务生态体系,包括持续交付流水线、部署、运维、监控以及告警等机制。
基础篇目标
-
学习掌握微服务架构的概念与本质
-
使用Spring boot/Spring Cloud 构建活动报名系统
-
使用Netflix OSS构建微服务支撑组件(服务注册发现、集中化配置中心、API网关、容错处理)
-
使用Docker发布服务
-
使用Docker-Compose在开发环境中运行多个服务
高级篇目标
-
学习掌握微服务的测试策略与PACT测试
-
学习掌握微服务的安全机制与OAuth2.0实现
-
学习掌握微服务间的异步通信机制
-
学习了解微服务的监控与告警
-
学习掌握微服务架构的日志聚合
-
构建微服务的持续交付流水线
5课程内容
基础篇课程大纲
微服务架构从 0 到 1
-
微服务架构介绍
-
微服务架构的本质与优势
-
微服务与SOA
-
微服务的设计原则
基于微服务构建活动报名系统
-
需求理解与分析
-
技术选型(Java/Spring Boot/Spring loud/REST/HAL/MongoDB)
-
服务定义与划分
-
服务支撑组件介绍(服务注册,集中化配置,断路器,服务网关)
-
思考/练习
Spring Boot 应用实践
-
Spring Boot 介绍
-
Spring Boot的核心功能
-
Spring Boot Demo
-
练习
Spring Cloud 应用实践
-
Spring Cloud 介绍
-
Spring Cloud的核心功能
-
Spring Cloud Demo
-
练习
REST/HAL 应用实践
-
REST 介绍
-
HAL 介绍
-
为什么使用HAL
-
HAL Browser 实践
Docker 应用实践
-
Docker介绍
-
Docker的常用命令
-
构建Dockerfile
-
使用Docker-compose
构建第一个微服务
-
使用Spring-Data-REST实现Event-Service服务
-
使用HAL完成服务间同步通信
-
使用HAL-Browser浏览服务接口
-
使用MongoDB存储数据
-
使用Docker-compose运行服务
-
构建Dockerfile
-
练习
微服务的集中化配置(centralized-config)
-
为什么要集中化配置
-
集中化配置的实现原理与方式
-
使用Spring Cloud Config 实现集中化配置
-
使用Spring Cloud Bus与RabbitMQ同步多服务配置
-
Spring Cloud Config Demo
-
练习
微服务的注册与发现(service-discovery)
-
为什么要服务注册与发现
-
服务注册与服务发现的实现方式
-
使用Netflix Eureka/Spring Cloud实现服务注册与发现
-
使用Netflix Ribbon/Spring Cloud实现客户端负载均衡
-
使用Netflix Feign/Spring Cloud实现申明式REST调用
-
练习
微服务的容错处理(circurt-breaker)
-
微服务下的可用性与故障蔓延(Failure Cascading)
-
断路器模式的原理与实现
-
使用Netflix Hystrix/Spring Cloud实现容错
-
使用Netflix Turbie实现监控聚合
-
练习
构建微服务网关
-
为什么需要微服务网关
-
微服务网关的实现方案
-
使用Netflix Zuul实现微服务网关
-
练习
微服务架构与实践总结
-
微服务的发布与部署
-
基于微服务的活动报名系统
-
练习
高级篇课程大纲
微服务的测试
-
测试金字塔
-
测试策略与实现
-
集成测试与契约测试
-
基于消费者驱动的契约测试PACT
-
使用JVM-PACT构建契约测试
-
练习
微服务的安全
-
微服务下安全的实现方式
-
使用HTTPS加密传输内容
-
OAuth2.0综述
-
使用Spring Cloud Security实现活动报名
-
练习
微服务间的通信
-
服务间的同步通信
-
服务间的异步通信
-
使用Jesque完成报名后的通知
-
在活动报名系统中整合Jesque
-
练习
微服务的监控与告警
-
服务的监控与告警综述
-
微服务监控与告警常用方案
-
使用Prometheus实现服务监控
-
在活动报名系统中整合Prometheus
-
服务告警
-
练习
微服务的日志聚合
-
为什么要日志聚合
-
日志聚合的常用技术方案
-
使用ETL实现服务的日志聚合与管理
-
使用Docker-compose运行ELK
-
在活动报名系统中整合ELK
-
练习
构建微服务的持续交付流水线
-
持续集成
-
持续交付
-
Jenkins2.0介绍
-
构建持续交付流水线
-
练习
微服务的依赖管理
-
可视化服务依赖图
-
练习
微服务架构与实践总结
-
基于微服务的活动报名系统
-
微服务架构总结
http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2650994360&idx=3&sn=d11399313a76e3367453e6e24982972d&chksm=bdbf0eeb8ac887fd031b55a2a407345a9a79fe1cc9366751fcf91ffb77ecc77b7e23300bfd8c&mpshare=1&scene=1&srcid=1011ve1uUq6YNm4WGL19oRPR#rd