转载请标明出处:

https://blog.csdn.net/forezp/article/details/79735542

本文出自方志朋的博客

作者简介

方志朋,毕业于武汉理工大学,CSDN博客专家,专注于微服务、大数据等领域,乐于分享,爱好开源,活跃于各大开源社区。著有《史上最简单的Spring Cloud教程》,累计访问量超过了300万。

购买地址

点击购买书籍-京东

点击购买书籍-当当

点击购买书籍-亚马逊

书籍源码下载

https://github.com/forezp/springcloud-book

目录

第1章 微服务简介

  • 1.1 单体架构及其存在的不足

    • 1.1.1 单体架构简介
    • 1.1.2 单体架构存在的不足
    • 1.1.3 单体架构使用服务器集群及存在的不足
  • 1.2 微服务
    • 1.2.1 什么是微服务
    • 1.2.2 微服务的优势
  • 1.3 微服务的不足
    • 1.3.1 微服务的复杂度
    • 1.3.2 分布式事务
    • 1.3.3 服务的划分
    • 1.3.4 服务的部署
  • 1.4 微服务和SOA的关系
  • 1.5 微服务的设计原则

第2章 Spring Cloud简介

  • 2.1 微服务应该具备的功能

    • 2.1.1 服务的注册与发现
    • 2.1.2 服务的负载均衡
    • 2.1.3 服务的容错
    • 2.1.4 服务网关
    • 2.1.5 服务配置的统一管理
    • 2.1.6 服务链路追踪
  • 2.2 Spring Cloud
    • 2.2.1 简介
    • 2.2.2 常用组件
    • 2.2.3 项目一览表
  • 2.3 Dubbo简介
  • 2.4 Spring Cloud与Dubbo比较
  • 2.5 Kubernetes简介
  • 2.6 Spring Could与Kubernetes比较
  • 2.7 总结

第3章 构建微服务的准备

  • 3.1 JDK的安装

    • 3.1.1 JDK的下载和安装
    • 3.1.2 环境变量的配置
  • 3.2 IDEA的安装
    • 3.2.1 IDEA的下载
    • 3.2.2 用IDEA创建一个Spring Boot工程
    • 3.2.3 用IDEA启动多个Spring Boot工程实例
  • 3.3 构建工具Maven的使用
    • 3.3.1 Maven简介
    • 3.3.2 Maven的安装
    • 3.3.3 Maven的核心概念
    • 3.3.4 编写Pom文件
    • 3.3.5 Maven构建项目的生命周期
    • 3.3.6 常用的Maven命令

第4章 开发框架Spring Boot

  • 4.1 Spring Boot简介

    • 4.1.1 Spring Boot的特点
    • 4.1.2 Spring Boot的优点
  • 4.2 用IDEA构建Spring Boot工程
    • 4.2.1 项目结构
    • 4.2.2 在Spring Boot工程中构建Web
    • 4.2.3 Spring Boot的测试
  • 4.3 Spring Boot配置文件详解
    • 4.3.1 自定义属性
    • 4.3.2 将配置文件的属性赋给实体类
    • 4.3.3 自定义配置文件
    • 4.3.4 多个环境的配置文件
  • 4.4 运行状态监控Actuator
    • 4.4.1 查看运行程序的健康状态
    • 4.4.2 查看运行程序的Bean
    • 4.4.3 使用Actuator关闭应用程序
    • 4.4.4 使用shell连接Actuator
  • 4.5 Spring Boot整合JPA
  • 4.6 Spring Boot整合Redis
    • 4.6.1 Redis简介
    • 4.6.2 Redis的安装
    • 4.6.3 在Spring Boot中使用Redis
  • 4.7 Spring Boot整合Swagger2,搭建Restful API在线文档

第5章 服务注册和发现Eureka

  • 5.1 Eureka简介

    • 5.1.1 什么是Eureka
    • 5.1.2 为什么选择Eureka
    • 5.1.3 Eureka的基本架构
  • 5.2 编写Eureka Server
  • 5.3 编写Eureka Client
  • 5.4 源码解析Eureka
    • 5.4.1 Eureka的一些概念
    • 5.4.2 Eureka的高可用架构
    • 5.4.3 Register服务注册
    • 5.4.4 Renew服务续约
    • 5.4.5 为什么Eureka Client获取服务实例这么慢
    • 5.4.6 Eureka 的自我保护模式
  • 5.5 构建高可用的Eureka Server集群
  • 5.6 总结

第6章 负载均衡Ribbon

  • 6.1 RestTemplate简介
  • 6.2 Ribbon简介
  • 6.3 使用RestTemplate和Ribbon来消费服务
  • 6.4 LoadBalancerClient简介
  • 6.5 源码解析Ribbon

第7章 声明式调用Feign

  • 7.1 写一个Feign客户端
  • 7.2 FeignClient详解
  • 7.3 FeignClient的配置
  • 7.4 从源码的角度讲解Feign的工作原理
  • 7.5 在Feign中使用HttpClient和OkHttp
  • 7.6 Feign是如何实现负载均衡的
  • 7.7 总结

第8章 熔断器Hystrix

  • 8.1 什么是Hystrix
  • 8.2 Hystrix解决了什么问题
  • 8.3 Hystrix的设计原则
  • 8.4 Hystrix的工作机制
  • 8.5 在RestTemplate和Ribbon上使用熔断器
  • 8.6 在Feign上使用熔断器
  • 8.7 使用Hystrix Dashboard监控熔断器的状态
    • 8.7.1 在RestTemplate中使用Hystrix Dashboar
    • 8.7.2 在Feign中使用Hystrix Dashboard
  • 8.8 使用Turbine聚合监控

第9章 路由网关Spring Cloud Zuul

  • 9.1 为什么需要Zuul
  • 9.2 Zuul的工作原理
  • 9.3 案例实战
    • 9.3.1 搭建Zuul服务
    • 9.3.2 在Zuul上配置API接口的版本号
    • 9.3.3 在Zuul上配置熔断器
    • 9.3.4 在Zuul中使用过滤器
    • 9.3.5 Zuul的常见使用方式

第10章 配置中心Spring Cloud Config

  • 10.1 Config Server从本地读取配置文件

    • 10.1.1 构建Config Server
    • 10.1.2 构建Config Client
  • 10.2 Config Server从远程Git仓库读取配置文件
  • 10.3 构建高可用的Config Server
    • 10.3.1 构建Eureka Server
    • 10.3.2 改造Config Server
    • 10.3.3 改造Config Client
  • 10.4 使用Spring Cloud Bus刷新配置

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

  • 11.1 为什么需要Spring Cloud Sleuth
  • 11.2 基本术语
  • 11.3 案例讲解
    • 11.3.1 构建Zipkin Server
    • 11.3.2 构建User Service
    • 11.3.3 构建Gateway Service
    • 11.3.4 项目演示
  • 11.4 在链路数据中添加自定义数据
  • 11.5 使用RabbitMQ 传输链路数据
  • 11.6 在MySQL数据库中存储链路数据
    • 11.6.1 使用Http传输链路数据,并存储在MySQL数据库
    • 11.6.2 使用RabbitMQ传输链路数据,并存储在MySQL数据库
  • 11.7 在ElasticSearch中存储链路数据
  • 11.8 用Kibana展示链路数据

第12章 微服务监控Spring Boot Admin

  • 12.1 使用Spring Boot Admin监控Spring Cloud微服务

    • 12.1.1 构建Admin Server
    • 12.1.2 构建Admin Client
  • 12.2 在Spring Boot Admin中集成Turbine
    • 12.2.1 改造Eureka Client
    • 12.2.2 另行构建Eureka Client
    • 12.2.3 构建Turbine工程
    • 12.2.4 在Admin Server中集成Turbine
  • 12.3 在Spring Boot Admin中添加安全登录界面

第13章 Spring Boot Security详解

  • 13.1 Spring Security简介

    • 13.1.1 什么是Spring Security
    • 13.1.2 为什么选择Spring Security
    • 13.1.3 Spring Security提供的安全模块
  • 13.2 Spring Boot Security与Spring Security的关系
  • 13.3 Spring Boot Security案例详解
    • 13.3.1 构建Spring Boot Security工程
    • 13.3.2 配置Spring Security
    • 13.3.3 编写相关界面
    • 13.3.4 Spring Security方法级别上的保护
    • 13.3.5 从数据库中读取用户的认证信息
  • 13.4 总结

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

  • 14.1 什么是OAuth2
  • 14.2 如何使用Spring OAuth2
    • 14.2.1 OAuth2 Provider
    • 14.2.2 OAuth2 Client
  • 14.3 案例分析
    • 14.3.1 编写Eureka Server
    • 14.3.2 编写Uaa授权服务
    • 14.3.3 编写service-hi资源服务
  • 14.4 总结

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

  • 15.1 JWT简介

    • 15.1.1 什么是JWT
    • 15.1.2 JWT的结构
    • 15.1.3 JWT的应用场景
    • 15.1.4 如何使用JWT
  • 15.2 案例分析
    • 15.2.1 案例架构设计
    • 15.2.2 编写主Maven工程
    • 15.2.3 编写Eureka Server
    • 15.2.4 编写Uaa授权服务
    • 15.2.5 编写user-service资源服务
  • 15.3 总结

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

  • 16.1 案例介绍

    • 16.1.1 工程结构
    • 16.1.2 使用的技术栈
    • 16.1.3 工程架构
    • 16.1.4 功能展示
  • 16.2 案例详解
    • 16.2.1 准备工作
    • 16.2.2 构建主Maven工程
    • 16.2.3 构建eureka-server工程
    • 16.2.4 构建config-server工程
    • 16.2.5 构建zipkin-service工程
    • 16.2.6 构建monitoring-service工程
    • 16.2.7 构建uaa-service工程
    • 16.2.8 构建gateway-service工程
    • 16.2.9 构建admin-service工程
    • 16.2.10 构建user-service工程
    • 16.2.11 构建blog-service工程
    • 16.2.12 构建log-service工程
  • 16.3 启动源码工程
  • 16.4 项目演示
  • 16.5 总结




扫码关注公众号有惊喜

(转载本站文章请注明作者和出处 方志朋的博客

《深入理解Spring Cloud与微服务构建》书籍目录的更多相关文章

  1. 《iOS开发实战 从入门到上架App Store(第2版)》书籍目录

    第1章 开发准备 1.1 iOS 10新特性简述 1.1.1 新增触觉反馈编程接口 1.1.2 SiriKit框架的开放 1.1.3 引入Messages App 1.1.4 通知框架的整合与扩展 1 ...

  2. 【转】 iOS开发之打包上传到App Store——(一)各种证书的理解

    OK,有日子没写iOS开发的相关文章啦,主要是最近的精力都没在这上面,不过既然产品已经快要出来了,就有必要了解一下各种证书啥的(众所周知iOS的一堆证书可是很让人头大呀),最近确实被这个搞得头大,然后 ...

  3. iOS开发从申请账号到上线APP Store步骤

    1.developer.apple.com 申请开发者账号 2.根据API Cloud创建证书: http://docs.apicloud.com/Dev-Guide/iOS-License-Appl ...

  4. iOS开发 点击跳转到App Store 或者 点击按钮去评价

    //跳转到应用页面 NSString *str = [NSString stringWithFormat:@"http://itunes.apple.com/us/app/id%d" ...

  5. iOS 开发之应用内弹出 App Store 应用界面

    在APP内给其他APP做推广,经常用到在应用内弹出应用的APP #import <StoreKit/SKStoreProductViewController.h> 设置代理:<SKS ...

  6. 2018最新苹果APP上架App Store流程(超详细)

    本文转发:https://blog.csdn.net/xxw888/article/details/73618837 2018最新整理iOS app上架app详细教程 上架iOS需要一个付费688的开 ...

  7. iOS开发-UI 从入门到精通(三)

    iOS开发-UI 从入门到精通(三)是对 iOS开发-UI 从入门到精通(一)知识点的综合练习,搭建一个简单地登陆界面,增强实战经验,为以后做开发打下坚实的基础! ※在这里我们还要强调一下,开发环境和 ...

  8. iOS开发-UI 从入门到精通(二)

    iOS开发-UI 从入门到精通(二)是对 iOS开发-UI 从入门到精通(一)知识点的巩固,主要以习题练习为主,增强实战经验,为以后做开发打下坚实的基础! ※开发环境和注意事项: 1.前期iOS-UI ...

  9. iOS开发——实战OC篇&环境搭建之Xib(玩转UINavigationController与UITabBarController)

    iOS开发——实战OC篇&环境搭建之Xib(玩转UINavigationController与UITabBarController)   前面我们介绍了StoryBoard这个新技术,和纯技术 ...

  10. iOS开发——实战OC篇&环境搭建之纯代码(玩转UINavigationController与UITabBarController)

    iOS开发——实战OC篇&环境搭建之纯代码(玩转UINavigationController与UITabBarController)   这里我们就直接上实例: 一:新建一个项目singleV ...

随机推荐

  1. 【Elasticsearch】集群管理

    8.1 Elasticsearch时光机 Elasticsearch的快照,防止出错,灾备8.1.1 创建快照存储库创建快照之前必须建一个存储库,有如下几个方面,name,type,settings, ...

  2. 线程安全的Dictionary

    线程安全的DictionaryConcurrentDictionary<TKey, TValue> 类

  3. 为什么C语言会有头文件

    前段时间一个刚转到C语言的同事问我,为什么C会多一个头文件,而不是像Java和Python那样所有的代码都在源文件中.我当时回答的是C是静态语言很多东西都是需要事先定义的,所以按照惯例我们是将所有的定 ...

  4. OLEDB事务

    学过数据的人一般都知道事务的重要性,事务是一种对数据源的一系列更新进行分组或者批处理以便当所有更新都成功时同时提交更新,或者任意一个更新失败时进行回滚将数据库中的数据回滚到执行批处理中的所有操作之前的 ...

  5. TCP/IP五层模型详解

    将应用层,表示层,会话层并作应用层,从tcp/ip五层协议的角度来阐述每层的由来与功能,搞清楚了每层的主要协议就理解了整个互联网通信的原理. 首先,用户感知到的只是最上面一层应用层,自上而下每层都依赖 ...

  6. stark——快速过滤list_filter

    一.获取过滤字段 1.给自定义配置类配置list_filter app01/stark.py: class BookConfig(ModelStark): list_display = [" ...

  7. scss-传递内容块到@mixin

    样式块被传递给混入用于放置内的样式.在@content指令的位置,样式被包含进mixin. 内容块被传递到块被定义一个混合的范围进行计算. 下面的例子演示了mixin使用内容块的SCSS代码: @mi ...

  8. C++中 结构体和类的异同

    在C++中,结构体是一种特殊形态的类. 结构体和类的唯一区别就是:  结构体和类具有不同的默认访问控制属性. 类中,对于未指定访问控制属性的成员,其访问控制属性为私有类型(private) 结构体中, ...

  9. Android 自定义倾斜字体

    public class RotateTextView extends AppCompatTextView { private static final int DEFAULT_DEGREES = 0 ...

  10. 避免Autoclose和Autoshrink选项

    避免Autoclose和Autoshrink选项发布日期:2001年12月18日 问题:我在Microsoft SQL Server 2000资源工具包中读到了一个用于就应当避免使用的选项对所有数据库 ...