写点什么

什么?还不知道该如何学习微服务?这份 Github 上星标 55.9k 的微服务神仙笔记真的太香了!

发布于: 2020 年 12 月 12 日

微服务


微服务,是著名的 00 ( 面向对象,Object Oriented) 专家 Martin Fowler 提出来的,它是用来描述将软件应用程序设计为独立部署的服务的一种特殊方式。最近两年,微服务在各大技术会议、文章、书籍上出现的频率已经让人们意识到它对于软件领域所带来的影响力。



篇幅限制不能全展示出来,需要获取这两份文档的老哥,麻烦帮忙一键三连+评论,然后添加 VX(tkzl6666)即可免费领取




微服务架构


微服务架构的系统是一个分布式系统,按业务领域划分为独立的服务单元,有自动化运维、容错、快速演进的特点,它能够解决传统单体架构系统的痛点,同时也能满足越来越复杂的业务需求。


要注意的是


我们做软件的架构设计,就是要能选择和取舍。光架构设计模式就有好几十种,面对围绕微服务的众多杂音,开发者和架构师应该具备选择和取舍的能力,应该站在比较高的角度俯瞰全局、权衡利弊,做出正确的架构和技术选择。


为了更好的解决这个问题,小编在这一块一直是两份相关文档配合使用,吃透后能对微服务有一个整体的认知,以及为架构师提供一个微服务的全局视野,并教会架构师如何在纷繁复杂的情况下做出正确的架构选择和取舍。废话就不多说了,内容如下:


深入理解 Spring Cloud 与微服务构建(大致分为五部分)


  • 第 1 章 微服务简介

  • 第 2 章 Spring Cloud 简介


详细介绍了微服务架构和 Spring Cloud



  • 第 3 章 构建微服务的准备

  • 第 4 章 开发框架 Spring Boot


准备工作


  • 第 5 章 服务注册和发现 Eureka

  • 第 6 章 负载均衡 Ribbon

  • 第 7 章 声明式调用 Feign

  • 第 8 章 熔断器 Hystrix

  • 第 9 章 路由网关 Spring Cloud Zuul

  • 第 10 章 配置中心 Spring Cloud Config

  • 第 11 章 服务链路追踪 Spring Cloud Sleuth

  • 第 12 章 微服务监控 Spring Boot Admin


以案例为切入点,讲解了 Spring Cloud 构建微服务的基础组件



  • 第 13 章 Spring Boot Security 详解

  • 第 14 章 使用 Spring Cloud OAuth2 保护微服务系统

  • 第 15 章 使用 Spring Security OAuth2 和 JWT 保护微服务系统


讲述了使用 Spring Cloud OAuth2 来保护微服务系统的相关知识



  • 第 16 章 使用 Spring Cloud 构建微服务综合案例


用一个综合案例全面讲解了如何使用 SpringCloud 构建微服务



微服务架构设计模式


  • 第 1 章 逃离单体地狱


  1. 迈向单体地狱的漫长旅程      

  2. 拯救之道:微服务架构    

  3. 微服务架构的好处和弊端    

  4. 微服务架构的模式语言   

  5. 微服务之上:流程和组织



  • 第 2 章 服务的拆分策略


  1. 微服务架构到底是什么  

  2. 为应用程序定义微服务架构 


  • 第 3 章 微服务架构中的进程间通信


  1. 微服务架构中的进程间通信概述

  2. 基于同步远程过程调用模式的通信

  3. 基于异步消息模式的通信 

  4. 使用异步消息提高可用性



  • 第 4 章 使用 Saga 管理事务


  1. 微服务架构下的事务管理  

  2. Saga 的协调模式

  3. 解决隔离问题  

  4. Order Service 和 Create Order Saga 的设计



  • 第 5 章 微服务架构中的业务逻辑设计


  1. 业务逻辑组织模式 

  2. 使用聚合模式设计领域模型

  3. 发布领域事件

  4. Kitchen Service 的业务逻辑

  5. Order Service 的业务逻辑



  • 第 6 章 使用事件溯源开发业务逻辑


  1. 使用事件溯源开发业务逻辑概述

  2. 实现事件存储库

  3. 同时使用 Saga 和事件溯源


  • 第 7 章 在微服务架构中实现查询


  1. 使用 API 组合模式进行查询

  2. 使用 CQRS 模式 

  3. 设计 CQRS 视图  

  4. 实现基于 AWS DynamoDB 的 CQRS 视图



  • 第 8 章 外部 API 模式


  1. 外部 API 的设计难题 

  2. API Gateway 模式

  3. 实现一个 API Gateway



  • 第 9 章 微服务架构中的测试策略(上)


  1. 微服务架构中的测试策略概述 

  2. 为服务编写单元测试 


  • 第 10 章 微服务架构中的测试策略(下)


  1. 编写集成测试

  2. 编写组件测试

  3. 端到端测试



  • 第 11 章 开发面向生产环境的微服务应用


  1. 开发安全的服务

  2. 设计可配置的服务

  3. 设计可观测的服务 

  4. 使用微服务基底模式开发服务



  • 第 12 章 部署微服务应用


  1. 部署模式:编程语言特定的发布包格式 

  2. 部署模式:将服务部署为虚拟机

  3. 部署模式:将服务部署为容器

  4. 使用 Kubernetes 部署 FTGO 应用程序

  5. 部署模式:Serverless 部署 

  6. 使用 AWS Lambda 和 AWS Gateway 部署 RESTful 服务



  • 第 13 章 微服务架构的重构策略


  1. 重构到微服务需要考虑的问题

  2. 将单体应用重构为微服务架构的若干策略 

  3. 设计服务与单体的协作方式

  4. 将新功能实现为服务:处理错误配送订单

  5. 从单体中提取送餐管理功能



写在最后


这两份文档不仅有微服务领域已经识别出来的问题、解决思路和解决方案,也有相应的代码例子。可以帮助微服务相关人员构建知行合一的能力,可以帮你在设计微服务架构时做出取舍,能在你处理微服务相关问题左右为难的时候给你提供参考和建议。


用户头像

微信:tkzl6666 添加获取你想要的Java资料 2019.01.29 加入

添加VX(tkzl6666 ) 获取大厂面试真题,面试复习资料,Java进阶资料,Java实战项目。

评论 (1 条评论)

发布
用户头像
什么?还不知道该如何学习微服务?这份 Github 上星标 55.9k 的微服务神仙笔记真的太香了!
2020 年 12 月 12 日 17:26
回复
没有更多了
什么?还不知道该如何学习微服务?这份Github上星标55.9k的微服务神仙笔记真的太香了!