前言
本文是以微服务与分布式开发结合的独特视角,展现来自一线开发者的实战经验总结,希望大家能够仔细品读,把握其中的真谛,不断地提高自己的技术深度和广度,才能在企业中更好的生存下来!
本文就给大家分享SpringCloud微服务和分布式系统实践的全部技术知识,总共有527页、20章的内容,因为内容实在是太多了,文中不能一一给大家体现出来,所以只能把部分知识点拿出来给大家介绍,每章都有更加细化的内容
目录
主要讲解内容
第1章分布式和微服务概述;
- 1.1互联网系统的特征
- 1.2分布式系统概述
- 1.3分布式系统的设计原则
- 1.4微服务架构
- 1.5 Spring Cloud
- 1.6微服务系统样例简介
第2章技术基础;为了更好地介绍Spring Cloud,这里稍微介绍一下Spring Boot和HTTP的REST风格。因为SpringCloud是以Spring Boot作为基石的,而各个服务系统又是通过REST风格的请求集成在一起的,所以学习它们将有助于我们深入学习Spring Cloud。当然,如果你已经对它们很熟悉了,也可以跳过本章,直接学习第3章的内容。
- 2.1 Spring Boot
- 2.2 REST风格简介
第3章服务治理———Eureka;Eureka是Spring Cloud的服务治理中心。在使用Spring Boot进行了二次封装后,Eureka的使用就显得十分简易了。Eureka作为一个微服务的治理中心,它是一个服务应用,可以接收其他服务的注册,也可以发现和治理服务实例。
- 3.1服务治理中心
- 3.2 Eureka治理机制
- 3.3 Eureka配置
第4章客户端负载均衡——Ribbon;Spring Cloud Netflix Ribbon是一种客户端负载均衡的组件,为了方便,在本文中都简称为Ribbon。在微服务架构中,我们依照业务将系统进行切分,但一个实际的业务往往需要多个微服务通过相互协作来完成,所以各种微服务之间存在服务调用。
在Spring Cloud中,提供的服务调用是Ribbon和 OpenFeign。Ribbon是Netflix公司开发的组件,Spring Cloud通过二次封装使得它更加简单易用。OpenFeign实际也是基于Ribbon来实现的。
微服务之间的调用往往被称为“客户端负载均衡”,这是因为在 Eureka 的机制中,任何微服务都是Eureka的“客户端”。通过第3章的学习,可以知道一个微服务可以存在多个实例,在进行服务调用的时候需要选取具体实例进行调用,这就需要通过具体的负载均衡算法来实现了。正如我们第3章的例子,产品微服务可能会调用资金微服务,但是资金微服务下面又分为多个实例,如何获取资金微服务下的多个实例是服务实例清单获取和维护的功能,而如何选取具体的服务实例就是负载均衡的功能了。
- 4.1负载均衡概述
- 4.2初识Ribbon
- 4.3Ribbon负载均衡器和策略
- 4.4 Ribbon服务实例清单维护
- 4.5自定义Ribbon客户端
- 4.6 Ribbon使用实践
第5章断路器———Hystrix;Spri