转载请标明出处:

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. 6、Angular Route 路由

    1.没有嵌套路由 类似 ui-route 上述的html用红字标记的是必须导入的.这是因为:路由并不在ng2中,需要我们额外引入,另外我们需要设置base href,这是个什么东西呢?相当于我们后续所 ...

  2. 关于IQueryable和IEnumerable

    园里对这两个已经有很多文章作了深入的介绍,我总结些,当成笔记用. 一.具体判断用哪个上,如果是运行在本地内存中的,用IEnumerable,枚举该对象时,会立即反应查询结果. 如果是远程数据源,比如数 ...

  3. oracle中时间戳转为Date类型的数据

    问题描述: 一个表中原本应该存放date类型的数据,但是不知道之前哪位大仙把两个字段的类型建成了NUMBER类型的了,这样在后台看时间肯定不方便.现在需要改成date类型,但是现在库中是有数据的,不能 ...

  4. 移动端下滑刷新插件(jQuery插件)

    由于在工作不能独自开发,而且为了给他们方便,自己写过不少的插件,不过今天刚好空闲,发出刚好完成的,移动端的下滑到底刷新插件.我不是很喜欢写插件给别人用,因为用起来自然是简单的,没什么难度,所以一起分享 ...

  5. Google Kickstart在线测试规则以及注意事项

    谷歌招聘在如火如荼的进行中,进谷歌都需要经过谷歌kickstart在线测试,然后过了之后还有五轮的面试- -.好吧毕竟你待遇高,你强你有理.. 下面介绍一下进谷歌的第一关google kickstar ...

  6. CPU调度

    概念 1.控制,协调进程对CPU的竞争,按一定的调度算法从就绪队列中选择一个进程把CPU的使用权交给被选中的进程, 如果没有就绪进程,系统会安排一个系统空闲进程或idle进程 cpu调度要解决的三个问 ...

  7. 对 Vue 的理解(一)

    一.什么是 Vue ? 首先,Vue 是一个 MVVM 框架,M -- 模型,就是用来定义驱动的数据,V -- 视图,是经过数据改变后的 html,VM -- 框架视图,就是用来实现双向绑定的中间桥梁 ...

  8. Django——stark组件

    stark组件是仿照django的admin模块开发的一套组件,它的作用是在网页上对注册的数据表进行增删改查操作. 一.配置 1.创建stark应用,在settings.py中注册stark应用 st ...

  9. JavaScript入门几个概念

    JavaScript入门几个概念 刚刚入门JavaScript的时候,搞懂DOM.BOM以及它们的对象document和window很有必要. DOM是为了操作文档出现的API,document是它的 ...

  10. linux 中环境变量配置文件说明

    1. 修改/etc/profile文件 特点:所有用户的shell都有权使用你配置好的环境变量 说明:如果你的电脑仅用作开发,建议使用此配置,因为所有用户的shell都有权使用你配置好的环境变量,所以 ...