SpringCloud微服务笔记,基于一线企业的实际应用需求

75 阅读4分钟

前言

分布式系统比单机系统复杂得多,但经过多年的发展,业界已经有了丰富的分布式系统理论,也有了许多优秀的组件。在分布式系统理论里,最近流行的微服务架构理论成了佼佼者,微服务的概念也成了当前分布式系统实现方案中的主流,显然,微服务架构成了分布式系统的一种形式。优秀的分布式系统组件早期主要以国内阿里巴巴的Dubbo (现今已经被Apache归纳进入其孵化器)为主,后来从国外引入了Spring Boot和Spring Cloud,它们现在是微服务实现的主流方案。

那么,今天咱们就从目录、主要包括的内容和总结三部分给大家进行Spring Cloud的学习,希望大家能够喜欢!!

目录

本书基于一线企业的实际应用需求,介绍Spring Cloud微服务和常用的分布式系统。**【+jcc4261获取】**整体来说,全书分为4个部分。

主要内容:

第一部分介绍分布式系统的概念、分法和优缺点,提出微服务的概念,对Spring Cloud、SpringBoot和REST风格进行简单的介绍。

第1章分布式和微服务概述

  • 1.1互联网系统的特征

  • 1.2分布式系统概述

  • 1.3分布式系统的设计原则

  • 1.4微服务架构

  • 1.5 Spring Cloud

  • 1.6微服务系统样例简介

第2章技术基础

  • 2.1 Spring Boot

  • 2.2 REST风格简介

第二部分介绍Spring Cloud的各类组件,这是微服务的核心内容。介绍的组件包括服务注册和服务发现(Eureka)、服务调用(Ribbon 和OpenFeign)、断路器(Hystrix 和Resilience4j)、网关(Zuul 和Gateway)、配置(Config)、全链路追踪(Sleuth)、 微服务的监控(Admin)等。

第3章服务治理——Eureka

  • 3.1服务治理中心

  • 3.2 Eureka治理机制

  • 3.3 Eureka配置

第4章客户端负载均衡——Ribbon

  • 4.1负载均衡概述

  • 4.2初识Ribbon

  • 4.3 Ribbon负载均衡器和策略

  • 4.4 Ribbon服务实例清单维护

  • 4.5自定义Ribbon客户端

  • 4.6 Ribbon使用实践

第5章断路器——Hystrix

  • 5.1概述

  • 5.2入i门实例

  • 5.3 Hystrix工作原理

  • 5.4 Hystrix实践

  • 5.5仪表盘

  • 5.6 Hystrix属性配置

第6章新断路器——Resilience4j

  • 61断路器(rcitBraker)

  • 6.2限速器(RateLimiter)

  • 6.3舱壁隔离(Bulkhead)

  • 6.4重试器(Retry)

  • 6.5缓存(Cache)

  • 6.6时间限制器(Timeimiter)

  • 6.7组件混用

  • 68使用Sping Boot 2的配置方式

第7章声明式调用——OpenFeign

  • 7.1 OpenFeign的使用

  • 7.2配置Hystrix

  • 7.3使用Resilience4j调用OpenFeign接口

第8章旧API网关——Zuul

  • 8.1什么是网关

  • 8.2 Zuul入门实例

  • 8.3 Zuul原理一过滤器

  • 8.4限流

  • 8.5动态路由

  • 8.6灰度发布(金丝雀发布)

  • 8.7使用Hystrix熔断

第9章新网关——Spring CloudGateway

  • 9.1认识Gateway

  • 9.2断言(Predicate)

  • 9.3过滤器(Filter) 概述

  • 9.4内置过滤器工厂

  • 9.5自定义过滤器

  • 9.6 Gateway知识补充

第10章配置——Spring Cloud Config

  • 10.1入门实例一使用Git仓库

  • 10.2使用其他方式实现配置

  • 10.3服务端的使用详解

第11章Spring Cloud Sleuth全链路追踪

  • 11.1链路追踪的基本概念

  • 11.2 Spring Cloud Sleuth和Zipkin

  • 11.3实例

  • 11.4持久化

第12章微服务的监控——Spring Boot Admin

  • 12.1本章实例简介

  • 12.2 URL注册方式

  • 12.3服务发现注册方式

  • 12.4使用Spring Security保护Admin服务端

第三部分讲解分布式的其他知识,包括分布式发号机、分布式数据库、分布式缓存、分布式会话和权限等。

第13章生成唯一的ID——发号机制

  • 13.1生成ID的常见办法

  • 13.2自定义发号机制

第14章分布式数据库技术

  • 14.1基础知识

  • 14.2开发环境搭建

  • 14.3分片算法

  • 14.4分片中间件ShardingSphere

第15章分布式数据库事务

  • 15.1强—致性事务

  • 15.2弱一致性事务

  • 15.3分布式事务应用的实践理论

第16章分布式缓存——Redis

  • 16.1 Redis的高可用

  • 16.2使用一致性哈希(ShardedJedis)

  • 16.3分布式缓存实践

第17章分布式会话

  • 17.1分布式会话的几种方式

  • 17.2黏性会话

  • 17.3服务器会话复制

  • 17.4使用缓存(spring-session-data-redis)

  • 17.5持久化到数据库

第18章分布式系统权限验证

  • 18.1 Spring Security

  • 18.2自定义微服务权限控制

  • 18.3 OAuth 2.0概述

  • 18.4 Spring Cloud Security

第四部分通过Apache Thrift 讲解远程过程调用(RPC), 并且讲解在分布式中处理高并发的一些常用技巧,最后给出一个微服务实例。

第19章远程过程调用

  • 19.1远程过程调用

  • 19.2 Thrift简介

  • 19.3 RPC小结

第20章微服务设计和高并发实践

  • 20.1微服务设计原则

  • 20.2高并发系统的一一些优化经验

  • 20.3简易微服务系统实例

写在最后

随着微服务架构的兴起,国内的IT企业特别是互联网公司近年来都逐步引入了微服务技术并使其在实践中落地,实施微服务架构最流行的方案非SpringCloud莫属。

作为一名程序员知识的提升和技术的锻炼都是必不可少的,要不断的提升自己,从基础到精通都是必须的。