当前位置:首页 > 行业软件及应用 >
《Spring Cloud微服务架构进阶》电子书封面

Spring Cloud微服务架构进阶

  • 发布时间:2019年10月19日 16:04:09
  • 作者:朱荣鑫
  • 大小:219.4 MB
  • 类别:微服务电子书
  • 格式:PDF
  • 版本:全书扫描版
  • 评分:8.3

    Spring Cloud微服务架构进阶 PDF 全书扫描版

      给大家带来的一篇关于微服务相关的电子书资源,介绍了关于Spring、Cloud、微服务方面的内容,本书是由机械工业出版社出版,格式为PDF,资源大小219.4 MB,朱荣鑫编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:9.9。

      内容介绍

      Spring Cloud微服务架构进阶

      Spring Cloud微服务架构进阶

      内容总结

      1.1 第一代服务框架
      代表:Dubbo(Java)、Orleans(.Net)等
      特点:和语言绑定紧密

      1.2 第二代服务框架
      代表:Spring Cloud等
      现状:适合混合式开发(例如借助Steeltoe OSS可以让ASP.Net Core与Spring Cloud集成),正值当年

      1.3 第三代服务框架
      代表:Service Mesh(服务网格) => 例如Service Fabric、lstio、Linkerd、Conduit等
      现状:在快速发展中,更新迭代比较快

      1.4 未来(目测不久)主流的服务架构和技术栈

      基础的云平台为微服务提供了资源能力(计算、存储和网络等),容器作为最小工作单元被Kubernetes调度和编排,Service Mesh(服务网格)管理微服务的服务通信,最后通过API Gateway向外暴露微服务的业务接口。
      目前,我所在的项目组已经在采用这种技术架构了,服务网格采用的是Linkerd,容器编排采用的是K8S,Spring Cloud已经没用了。But,不代表Spring Cloud没有学习的意义,对于中小型项目团队,Spring Cloud仍然是快速首选。

      内容介绍

      本书全面系统地介绍Spring Cloud及其在微服务架构中的应用。全书共13章,第1章介绍微服务架构相关的基本概念;第2章介绍Spring Cloud中包含的组件以Spring Cloud约定的上下文;第3章介绍Spring Cloud的基础:Spring Boot,包括如何构建一个Spring Boot服务、Spring Boot的配置文件和Actuator提供的监控管理端点;第4至第13章详细讲解Spring Cloud组件,包括:Eureka(服务注册与发现)、OpenFeign(声明式Restful客户端)、Hystrix(断路器)、Ribbon(客户端负载均衡器)、Gateway(API网关)、Config(配置中心)、Stream(消息驱动)、Bus(消息总线)、Security(认证与授权)、Sleuth(服务链路追踪)。本书为读者揭开了Spring Cloud组件实现的技术内幕,并提供了进阶应用的思路,可以作为使用Spring Cloud进行微服务架构实践的参考书。

      目录

      • 前言
      • 第1章 微服务架构介绍1
      • 1.1 微服务架构的出现1
      • 1.1.1 单体应用架构1
      • 1.1.2 SOA架构2
      • 1.1.3 微服务架构3
      • 1.2 微服务架构的流派5
      • 1.3 云原生与微服务9
      • 1.4 本章小结12
      • 第2章 Spring Cloud总览13
      • 2.1 Spring Cloud架构13
      • 2.2 Spring Cloud特性16
      • 2.2.1 Spring Cloud Context:应用上下文16
      • 2.2.2 Spring Cloud Commons:公共抽象19
      • 2.3 本章小结21
      • 第3章 Spring Cloud的基础:Spring Boot22
      • 3.1 Spring Boot简介22
      • 3.2 构建一个微服务24
      • 3.3 Spring Boot配置文件29
      • 3.3.1 默认配置文件29
      • 3.3.2 外部化配置29
      • 3.3.3 YAML30
      • 3.3.4 自动载入外部属性到Bean30
      • 3.3.5 多Profile31
      • 3.3.6 Starter32
      • 3.3.7 自制一个Starter32
      • 3.3.8 Actuator36
      • 3.4 本章小结38
      • 第4章 服务注册与发现:Eureka39
      • 4.1 基础应用40
      • 4.1.1 Eureka简介40
      • 4.1.2 搭建Eureka服务注册中心40
      • 4.1.3 搭建Eureka服务提供者42
      • 4.1.4 搭建Eureka服务调用者43
      • 4.1.5 Eureka服务注册和发现44
      • 4.1.6 Consul的简单应用46
      • 4.2 服务发现原理48
      • 4.3 Eureka Client源码解析49
      • 4.3.1 读取应用自身配置信息50
      • 4.3.2 服务发现客户端52
      • 4.3.3 拉取注册表信息56
      • 4.3.4 服务注册61
      • 4.3.5 初始化定时任务62
      • 4.3.6 服务下线68
      • 4.4 Eureka Server源码解析70
      • 4.4.1 服务实例注册表70
      • 4.4.2 服务注册72
      • 4.4.3 接受服务心跳74
      • 4.4.4 服务剔除75
      • 4.4.5 服务下线77
      • 4.4.6 集群同步78
      • 4.4.7 获取注册表中服务实例信息82
      • 4.5 进阶应用84
      • 4.5.1 Eureka Instance和Client的元数据84
      • 4.5.2 状态页和健康检查页端口设置85
      • 4.5.3 区域与可用区85
      • 4.5.4 高可用性服务注册中心86
      • 4.6 本章小结87
      • 第5章 声明式RESTful客户端:Spring Cloud OpenFeign88
      • 5.1 基础应用88
      • 5.1.1 微服务之间的交互88
      • 5.1.2 OpenFeign简介89
      • 5.1.3 代码示例89
      • 5.2 源码分析91
      • 5.2.1 核心组件与概念91
      • 5.2.2 动态注册BeanDefinition92
      • 5.2.3 实例初始化98
      • 5.2.4 函数调用和网络请求107
      • 5.3 进阶应用111
      • 5.3.1 Decoder与Encoder的定制化111
      • 5.3.2 请求/响应压缩112
      • 5.4 本章小结113
      • 第6章 断路器:Hystrix114
      • 6.1 基础应用114
      • 6.1.1 RestTemplate与Hystrix115
      • 6.1.2 OpenFeign与Hystrix117
      • 6.2 Hystrix原理118
      • 6.2.1 服务雪崩118
      • 6.2.2 断路器119
      • 6.2.3 服务降级操作120
      • 6.2.4 资源隔离121
      • 6.2.5 Hystrix实现思路122
      • 6.3 源码解析123
      • 6.3.1 封装HystrixCommand123
      • 6.3.2 HystrixCommand类结构129
      • 6.3.3 异步回调执行命令129
      • 6.3.4 异步执行命令和同步执行命令137
      • 6.3.5 断路器逻辑137
      • 6.3.6 资源隔离143
      • 6.3.7 请求超时监控148
      • 6.3.8 失败回滚逻辑150
      • 6.4 进阶应用152
      • 6.4.1 异步与异步回调执行命令152
      • 6.4.2 继承HystrixCommand153
      • 6.4.3 请求合并157
      • 6.5 本章小结161
      • 第7章 客户端负载均衡器:Spring Cloud Netflix Ribbon162
      • 7.1 负载均衡162
      • 7.2 基础应用163
      • 7.3 源码分析165
      • 7.3.1 配置和实例初始化165
      • 7.3.2 与OpenFeign的集成167
      • 7.3.3 负载均衡器LoadBalancerClient171
      • 7.3.4 ILoadBalancer173
      • 7.3.5 负载均衡策略实现177
      • 7.4 进阶应用184
      • 7.4.1 Ribbon API184
      • 7.4.2 使用Netty发送网络请求185
      • 7.4.3 只读数据库的负载均衡实现186
      • 7.5 本章小结187
      • 第8章 API网关:Spring Cloud Gateway189
      • 8.1 Spring Cloud Gateway介绍189
      • 8.2 基础应用190
      • 8.2.1 用户服务191
      • 8.2.2 网关服务192
      • 8.2.3 客户端的访问195
      • 8.3 源码解析195
      • 8.3.1 初始化配置196
      • 8.3.2 网关处理器197
      • 8.3.3 路由定义定位器202
      • 8.3.4 路由定位器205
      • 8.3.5 路由断言208
      • 8.3.6 网关过滤器216
      • 8.3.7 全局过滤器227
      • 8.3.8 API端点234
      • 8.4 应用进阶235
      • 8.4.1 限流机制235
      • 8.4.2 熔断降级238
      • 8.4.3 网关重试过滤器240
      • 8.5 本章小结241
      • 第9章 配置中心:Spring Cloud Config243
      • 9.1 基础应用244
      • 9.1.1 配置客户端244
      • 9.1.2 配置仓库245
      • 9.1.3 服务端246
      • 9.1.4 配置验证248
      • 9.1.5 配置动态更新249
      • 9.2 源码解析250
      • 9.2.1 配置服务器251
      • 9.2.2 配置客户端261
      • 9.3 应用进阶267
      • 9.3.1 为Config Server配置多个repo268
      • 9.3.2 客户端覆写远端的配置属性268
      • 9.3.3 属性覆盖269
      • 9.3.4 安全保护269
      • 9.3.5 加密解密270
      • 9.3.6 快速响应失败与重试机制272
      • 9.4 本章小结272
      • 第10章 消息驱动:Spring Cloud Stream274
      • 10.1 消息队列274
      • 10.2 基础应用276
      • 10.2.1 声明和绑定通道276
      • 10.2.2 自定义通道276
      • 10.2.3 接收消息276
      • 10.2.4 配置278
      • 10.3 源码分析278
      • 10.3.1 动态注册BeanDefinition279
      • 10.3.2 绑定服务282
      • 10.3.3 获取绑定器284
      • 10.3.4 绑定生产者289
      • 10.3.5 消息发送的流程291
      • 10.3.6 StreamListener注解的处理293
      • 10.3.7 绑定消费者298
      • 10.3.8 消息的接收304
      • 10.4 进阶应用306
      • 10.4.1 Binder For RocketMQ306
      • 10.4.2 多实例311
      • 10.4.3 分区311
      • 10.5 本章小结313
      • 第11章 消息总线:Spring Cloud Bus314
      • 11.1 基础应用314
      • 11.1.1 配置服务器315
      • 11.1.2 配置客户端316
      • 11.1.3 结果验证316
      • 11.2 源码解析318
      • 11.2.1 事件的定义与事件监听器319
      • 11.2.2 消息的订阅与发布326
      • 11.2.3 控制端点328
      • 11.3 应用进阶329
      • 11.3.1 在自定义的包中注册事件329
      • 11.3.2 自定义监听器330
      • 11.3.3 事件的发起者331
      • 11.4 本章小结332
      • 第12章 认证与授权:Spring Cloud Security333
      • 12.1 基础应用333
      • 12.1.1 OAuth2简介334
      • 12.1.2 JWT336
      • 12.1.3 搭建授权服务器338
      • 12.1.4 配置资源服务器341
      • 12.1.5 访问受限资源344
      • 12.2 整体架构346
      • 12.3 源码解析348
      • 12.3.1 安全上下文349
      • 12.3.2 认证350
      • 12.3.3 授权357
      • 12.3.4 Spring Security中的过滤器与拦截器361
      • 12.3.5 授权服务器372
      • 12.3.6 资源服务器387
      • 12.3.7 令牌中继机制394
      • 12.4 进阶应用395
      • 12.4.1 Spring Security定制395
      • 12.4.2 OAuth2定制399
      • 12.4.3 SSO单点登录403
      • 12.5 本章小结406
      • 第13章 服务链路追踪:Spring Cloud Sleuth407
      • 13.1 链路监控组件简介407
      • 13.2 基础应用410
      • 13.2.1 特性411
      • 13.2.2 项目准备411
      • 13.2.3 Spring Cloud Sleuth独立实现414
      • 13.2.4 集成Zipkin414
      • 13.3 本章小结420

      学习笔记

      SpringCloud重试机制配置详解

      首先声明一点,这里的重试并不是报错以后的重试,而是负载均衡客户端发现远程请求实例不可到达后,去重试其他实例。 @Bean@LoadBalancedRestTemplate restTemplate() { HttpComponentsClientHttpRequestFactory httpRequestFactory = new HttpComponentsClientHttpRequestFactory(); httpRequestFactory.setReadTimeout(5000); httpRequestFactory.setConnectTimeout(5000); return new RestTemplate(httpRequestFactory);} feign重试机制 feign默认是通过自己包下的Retryer进行重试配置,默认是5次 package feign;import static java.util.concurrent.TimeUnit.SECONDS;/** * Cloned for each invocation to {@link Client#execute(Request, feign.Request.Options)}. * Implementations may keep state to determine if retry operations should continue or not. */public in……

      使用Spring Cloud Feign作为HTTP客户端调用远程HTTP服务的方法(推荐)

      在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端。我们可以使用JDK原生的URLConnection、Apache的Http Client、Netty的异步HTTP Client, Spring的RestTemplate。但是,用起来最方便、最优雅的还是要属Feign了。 Feign简介 Feign是一种声明式、模板化的HTTP客户端。在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。比如: @Autowiredprivate AdvertGropRemoteService service; // 远程服务public AdvertGroupVO foo(Integer groupId) { return service.findByGroupId(groupId); // 通过HTTP调用……

      详解Spring Cloud Gateway基于服务发现的默认路由规则

      1.Spring Gateway概述 1.1 什么是Spring Cloud Gateway Spring Cloud Gateway 是Spring官方基于Spring 5.0,Spring Boot 2.0和Project Reactor等技术开发的网关,Spring Cloud Gateway旨在为微服务架构提供一种简单而有效的统一的API路由管理方式。Spring Cloud Gateway作为Spring Cloud生态系中的网关,目标是替代Netflix ZUUL,其不仅提供统一的路由方式,并且基于Filter链的方式提供了网关基本的功能,例如:安全,监控/埋点,和限流等。 1.2 Spring Cloud Gateway的功能 Spring Cloud Gateway 的特征: 基于 Spring Framework 5,Project Reactor 和 Spring Boot 2.0 动态路由 Predicates 和 Filters 作用于特定路由 集成 Hystrix 断路器 集成 Spring Cloud DiscoveryClient 易于编写的 Predicates……

      详解利用SpringCloud搭建一个最简单的微服务框架

      Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。 Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不同开源产品),比如:Spring Cloud Config、Spring Cloud Netflix、Spring Cloud CloudFoundry、Spring Cloud AWS、Spring Cloud Security、Spring Cloud Commons、Spring Cloud Zookeeper、Spring Cloud CLI等项目。 1.微服务 微服务主要包含服务注册,服务发现,服务路由,服务配置,服务熔断,服务降级等一系列的服务,而Spring Cloud为我们提供了个一整套的……

      以上就是本次介绍的微服务电子书的全部相关内容,希望我们整理的资源能够帮助到大家,感谢大家对码农之家的支持。

      上一篇:自然语言处理实践:聊天机器人技术原理与应用

      下一篇:自然语言处理综论

      展开 +

      收起 -

      • 《Spring Cloud微服务架构进阶》PDF下载

      码小辫

      重要!版权问题,本电子书取消了本地下载!

      需要的朋友可以关注左边的微信号,发送 电子书名关键字 (例如:python 算法……)

      如果找不到可以联系小辫(微信:maxiaobian1024)

      微服务相关电子书
      Spring Cloud与Docker微服务架构实战
      Spring Cloud与Docker微服务架构实战 高清版

      Spring Cloud与Docker微服务架构实战 可分为三部分,第1章对微服务架构进行了系统的介绍;第2-11章使用Spring Cloud开发框架编写了一个电影售票系统;第12-14章则讲解了如何将微服务应用运行在Do

      立即下载
      Spring Cloud微服务架构开发实战
      Spring Cloud微服务架构开发实战 完整版

      资深架构师手把手带你实战微服务;提供从设计、开发、部署到运维的一站式解决方案;涵盖Spring Boot微服务开发、Spring Cloud核心组件、Docker部署微服务应用;详解大量易于构建、运行

      立即下载
      Spring Cloud微服务:全栈技术与案例解析
      Spring Cloud微服务:全栈技术与案例解析 原书影印版

      本书的读者对象主要是Java开发人员:特别是工作1到3年这种工作经验的开发人员,这个阶段的开发人员技术能力一般,正需要一些实用的技术和经验来提升自己,Spring Cloud正是

      立即下载
      深入理解Spring Cloud与微服务构建
      深入理解Spring Cloud与微服务构建 清晰影印版

      深入浅出讲解Spring Cloud组件、开发工具、框架等知识点。使读者全面理解微服务的构建原理。实例丰富,解释清晰,易于读者真正理解原理,并学以致用。深入讲解Spring Cloud OAuth2,直击市场需求痛点。

      立即下载
      Spring Cloud微服务实战
      Spring Cloud微服务实战 高清版

      《Spring Cloud微服务实战》 从时下流行的微服务架构概念出发,详细介绍了Spring Cloud针对微服务架构中几大核心要素的解决方案和基础组件。对于各个组件的介绍,《Spring Cloud微服务实战》主要

      立即下载
      重新定义SPRING CLOUD实战
      重新定义SPRING CLOUD实战 清晰扫描版

      本书由Spring Cloud中国社区官方撰写,基于Spring Cloud的Finchley.RELEASE版本,核心成员来自原阿里、蚂蚁金服、金融等互联网企业,经验丰富。

      立即下载
      读者留言
      网友NO.30994
      网友NO.30994

      微服务的概念源于 2014 年 3 月 Martin Fowler 所写的一篇文章“Microservices”。文中内容提到:微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。
      每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于 HTTP 的 RESTful API)。每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。
      另外,应尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建。
      微服务是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。

      网友NO.37333
      网友NO.37333

      Spring Cloud核心子项目
      Spring Cloud Netflix:核心组件,可以对多个Netflix OSS开源套件进行整合,包括以下几个组件:
      Eureka:服务治理组件,包含服务注册与发现
      Hystrix:容错管理组件,实现了熔断器
      Ribbon:客户端负载均衡的服务调用组件
      Feign:基于Ribbon和Hystrix的声明式服务调用组件
      Zuul:网关组件,提供智能路由、访问过滤等功能
      Archaius:外部化配置组件
      Spring Cloud Config:配置管理工具,实现应用配置的外部化存储,支持客户端配置信息刷新、加密/解密配置内容等。
      Spring Cloud Bus:事件、消息总线,用于传播集群中的状态变化或事件,以及触发后续的处理
      Spring Cloud Security:基于spring security的安全工具包,为我们的应用程序添加安全控制
      Spring Cloud Consul : 封装了Consul操作,Consul是一个服务发现与配置工具(与Eureka作用类似),与Docker容器可以无缝集成

      网友NO.22859
      网友NO.22859

      接触Spring Cloud还是挺早的了,算是早期关注者吧,之后一直在项目中有实践和应用。相比于刚出来之前,Spring Cloud已经完善了太多,通过整合现有的开源框架和Spring社区自己开发的一部分组件,使得Spring Cloud功能越来越强大。Spring Cloud使用和整合单个组件还比较简单,但是在微服务的实践中,要求我们对这些基础的组件有更深的了解才行。在平时的应用中,我会去了解和学习各个组件的实现原理,虽然没有特别细致,但是也对其中的主要部分比较熟悉。

      关于这方面的书籍,其实已经有DIDI(翟永超)的Spring Cloud微服务实战和周立Spring Cloud与Docker微服务架构实战等书籍,写得时间比较早,内容质量也挺高了。笔者实在不敢谈超越,然而技术的发展和迭代很快,Spring Cloud版本迭到了Finchley,基于的Spring Boot版本已经是2.x了(2.x已经基于Spring 5),相对来说,好多组件的实现和用法方面变化还是很大。这本《Spring Cloud 微服务架构进阶》基于最新的Finchley,详细介绍了微服务架构中涉及到的主要Spring Cloud组件,配合基础应用的案例介绍实现原理。本书适合所有的Java开发者,特别希望能为从事微服务开发和架构的读者提供一些帮助。

      小锋

      小锋 提供上传

      资源
      34
      粉丝
      34
      喜欢
      961
      评论
      10

      Copyright 2018-2020 xz577.com 码农之家

      本站所有电子书资源不再提供下载地址,只分享来路

      版权投诉 / 书籍推广 / 赞助:QQ:520161757