展开全部

主编推荐语

本书内容通俗易懂,每章都结合实例进行讲解,特别适合Spring Cloud的入门读者阅读,也适合致力于互联网开发和Java开发的进阶读者阅读。

内容简介

本书首先从微服务架构兴起的背景讲起,探讨了为何在分布式系统开发中微服务架构将逐渐取代单体架构,然后对Spring Cloud所提供的微服务组件及解决方案进行了一一讲解,从而让读者不但可以系统地学习Spring Cloud的相关知识,而且还可以全面掌握微服务架构应用的设计、开发、部署和运维等知识。本书共11章,分为3篇。第1篇为微服务开发基础——Spring Boot框架及使用;第2篇为Spring Cloud组件实战;第3篇为微服务与Docker容器技术。其中第2篇为全书的核心,涵盖了构建微服务架构所需要的服务治理(Eureka)、客户端负载均衡(Ribbon)、微服务容错与降级处理(Hystrix)、微服务API统一网关(Zuul)、分布式配置中心(Config)、微服务调用链追踪(Sleuth)、微服务消息驱动开发(Stream)及微服务安全(OAuth及JWT)等相关知识。

目录

  • 版权信息
  • 前言
  • 本书特色
  • 本书内容
  • 本书源代码获取方式
  • 本书适合哪些读者阅读
  • 售后服务
  • 第1篇 微服务开发基础——Spring Boot框架及使用
  • 第1章 微服务架构开发
  • 1.1 单体架构应用的困境
  • 1.2 微服务架构
  • 1.2.1 如何定义微服务架构
  • 1.2.2 微服务架构的优点
  • 1.2.3 微服务架构的缺点
  • 1.3 微服务架构设计
  • 1.3.1 微服务粒度
  • 1.3.2 微服务拆分原则
  • 1.3.3 微服务自治原则
  • 1.3.4 微服务交互原则
  • 1.3.5 微服务架构迁移
  • 1.4 不应使用微服务架构的情形
  • 第2章 微服务基础——Spring Boot
  • 2.1 Spring与Spring Boot
  • 2.2 快速启动Spring Boot
  • 2.2.1 编写pom.xml文件
  • 2.2.2 编写应用引导类
  • 2.2.3 编写配置文件
  • 2.2.4 运行项目
  • 2.3 使用Spring Boot构建示例项目
  • 2.3.1 经典三层应用架构
  • 2.3.2 设计领域对象
  • 2.3.3 实现数据管理
  • 2.3.4 编写业务逻辑层
  • 2.3.5 编写RESTful API
  • 2.3.6 数据库初始化
  • 2.3.7 启动测试
  • 2.4 Spring Boot特性
  • 2.4.1 Spring Boot自动配置机制
  • 2.4.2 Spring Boot扩展属性配置
  • 2.4.3 Spring Boot日志配置
  • 2.5 关于敏捷开发
  • 2.6 关于RESTful API设计
  • 2.6.1 以资源为中心进行URL设计
  • 2.6.2 正确使用HTTP方法及状态码
  • 2.6.3 查询及分页处理原则
  • 2.6.4 其他指导原则
  • 第2篇 Spring Cloud组件实战
  • 第3章 Spring Cloud简介
  • 3.1 微服务架构的核心关键点
  • 3.2 Spring Cloud技术概览
  • 3.2.1 Spring Cloud子项目
  • 3.2.2 为何选择Spring Cloud
  • 3.3 Spring Cloud版Hello World示例
  • 第4章 服务治理与负载均衡
  • 4.1 什么是服务治理
  • 4.2 构建服务治理——Eureka
  • 4.2.1 搭建微服务Parent工程
  • 4.2.2 搭建服务治理服务器——Eureka服务器
  • 4.2.3 搭建服务提供者——注册服务
  • 4.2.4 搭建服务消费者——获取服务
  • 4.3 使用客户端负载均衡——Ribbon
  • 4.3.1 什么是客户端负载均衡
  • 4.3.2 启用Ribbon
  • 4.3.3 负载均衡测试
  • 4.4 使用Feign简化微服务调用
  • 4.5 深入Eureka
  • 4.5.1 服务注册及相关原理
  • 4.5.2 Eureka自我保护模式
  • 4.5.3 注册一个服务实例需要的时间
  • 4.5.4 Eureka高可用集群及示例
  • 4.5.5 多网卡及IP指定
  • 4.5.6 Eureka服务访问安全
  • 4.6 深入Ribbon
  • 4.6.1 Ribbon客户端负载均衡原理
  • 4.6.2 Ribbon负载均衡策略及配置
  • 4.6.3 直接使用Ribbon API
  • 4.7 深入Feign
  • 4.7.1 Feign的参数绑定
  • 4.7.2 Feign中的继承
  • 4.7.3 Feign与Swagger的冲突
  • 4.8 微服务健康监控
  • 4.9 异构服务解决方案——Sidecar
  • 第5章 微服务容错保护——Hystrix
  • 5.1 什么是微服务容错保护
  • 5.2 快速启动Hystrix
  • 5.2.1 引入Hystrix依赖
  • 5.2.2 开启Hystrix支持
  • 5.2.3 修改UserService实现
  • 5.2.4 容错测试
  • 5.2.5 服务降级的两种实现方式
  • 5.2.6 在Feign中使用Hystrix回退
  • 5.3 Hystrix容错机制分析
  • 5.3.1 Hystrix整体处理流程
  • 5.3.2 HystrixCommand与HystrixObservableCommand
  • 5.3.3 断路器原理分析
  • 5.3.4 Hystrix异常——HystrixBadRequestException
  • 5.4 服务隔离
  • 5.4.1 线程池隔离与信号量隔离
  • 5.4.2 服务隔离的颗粒度
  • 5.4.3 服务隔离配置
  • 5.4.4 小结
  • 5.5 服务降级模式
  • 5.5.1 快速失败
  • 5.5.2 静默失败
  • 5.5.3 返回默认值
  • 5.5.4 返回组装的值
  • 5.5.5 返回远程缓存
  • 5.5.6 主/从降级模式
  • 5.6 请求缓存
  • 5.7 请求合并
  • 5.8 Hystrix监控
  • 5.8.1 Hystrix仪表盘
  • 5.8.2 Turbine仪表盘集群监控
  • 5.8.3 Turbine与消息服务器集成
  • 第6章 API服务网关——Zuul
  • 6.1 API服务网关
  • 6.2 Spring Cloud与Netflix Zuul
  • 6.3 启用Zuul路由服务
  • 6.3.1 构建Zuul路由服务器
  • 6.3.2 路由测试
  • 6.3.3 负载均衡测试
  • 6.3.4 Hystrix容错与监控测试
  • 6.4 路由配置规则
  • 6.4.1 服务路由默认规则
  • 6.4.2 自定义微服务访问路径
  • 6.4.3 忽略指定微服务
  • 6.4.4 设置路由前缀
  • 6.4.5 通过静态URL路径配置路由映射
  • 6.4.6 路由配置顺序
  • 6.4.7 自定义路由规则
  • 6.5 Zuul路由其他设置
  • 6.5.1 Header设置
  • 6.5.2 HttpClient配置
  • 6.5.3 路由配置的动态加载
  • 6.6 Zuul容错与回退
  • 6.6.1 实现Zuul的回退
  • 6.6.2 服务超时
  • 6.7 Zuul过滤器
  • 6.7.1 过滤器特性
  • 6.7.2 过滤器类型及生命周期
  • 6.7.3 自定义Zuul过滤器
  • 6.7.4 禁用Zuul过滤器
  • 6.7.5 关于Error过滤器的一点补充
  • 6.8 @EnableZuulServer与@EnableZuulProxy比较
  • 6.8.1 EnableZuulServer注解的过滤器
  • 6.8.2 EnableZuulProxy注解的过滤器
  • 第7章 统一配置中心——Config
  • 7.1 Spring Cloud Config简介
  • 7.2 快速启动
  • 7.2.1 构建配置服务器
  • 7.2.2 创建应用配置文件
  • 7.2.3 升级微服务配置
  • 7.2.4 启动测试
  • 7.2.5 @Value注解
  • 7.2.6 关于配置服务的默认配置
  • 7.2.7 Spring配置加载顺序
  • 7.3 配置资源库
  • 7.3.1 配置资源规则详解
  • 7.3.2 集成Git仓库
  • 7.3.3 搜索目录
  • 7.3.4 本地缓存
  • 7.3.5 Git访问配置
  • 7.3.6 集成SVN
  • 7.3.7 使用文件系统
  • 7.4 配置的加密与解密
  • 7.4.1 安装JCE(Java Cryptography Extension)
  • 7.4.2 使用对称加密
  • 7.4.3 加密/解密端点
  • 7.4.4 客户端解密
  • 7.4.5 非对称加密
  • 7.5 配置服务器访问安全
  • 7.6 配置服务器的高可用
  • 7.6.1 整合Eureka
  • 7.6.2 快速失败与响应
  • 7.6.3 动态刷新配置
  • 第8章 分布式服务跟踪——Sleuth
  • 8.1 Spring Cloud Sleuth简介
  • 8.1.1 快速启用Sleuth
  • 8.1.2 Sleuth与日志框架
  • 8.1.3 有关Span
  • 8.2 Sleuth与ELK整合
  • 8.2.1 将日志输出到Logstash
  • 8.2.2 Logstash与Log4j的集成
  • 8.3 整合Zipkin服务
  • 8.3.1 构建Zipkin服务器
  • 8.3.2 整合微服务
  • 8.3.3 Zipkin分析
  • 8.3.4 输出TraceId
  • 8.4 Sleuth抽样采集与采样率
  • 第9章 消息驱动——Stream
  • 9.1 什么是消息驱动开发
  • 9.1.1 基于消息中间件开发的优点
  • 9.1.2 基于消息中间件开发的缺点
  • 9.2 Spring Cloud Stream简介
  • 9.2.1 应用模型
  • 9.2.2 编程模型
  • 9.2.3 使用“发布-订阅”模式
  • 9.3 Kafka使用指南
  • 9.3.1 Kafka基础知识
  • 9.3.2 搭建Kafka环境
  • 9.4 使用消息对应用重构
  • 9.4.1 为商品服务增加缓存功能
  • 9.4.2 为用户微服务添加消息发送功能
  • 9.4.3 为商品微服务添加消息监听功能
  • 9.4.4 测试
  • 9.4.5 自定义消息通道
  • 9.5 Spring Cloud Stream高级主题
  • 9.5.1 单元测试
  • 9.5.2 错误处理
  • 9.5.3 消息处理分发
  • 9.5.4 消费者组与消息分区
  • 9.5.5 消息绑定器
  • 9.6 消息总线——Spring Cloud Bus
  • 9.6.1 完成配置自动刷新配置
  • 9.6.2 发布自定义事件
  • 第10章 微服务应用安全——Security
  • 10.1 Spring Boot的应用安全
  • 10.1.1 实现用户认证
  • 10.1.2 实现用户鉴权
  • 10.2 微服务安全
  • 10.3 基于OAuth 2.0的认证
  • 10.3.1 OAuth 2.0授权流程
  • 10.3.2 客户端授权模式
  • 10.3.3 使用OAuth 2.0完成用户认证及授权
  • 10.3.4 整合API网关服务
  • 10.4 基于JWT的认证
  • 10.4.1 改造认证服务支持输出JWT
  • 10.4.2 在Zuul中对JWT进行解析
  • 10.4.3 改造商品微服务
  • 第3篇 微服务与Docker容器技术
  • 第11章 微服务与Docker
  • 11.1 Docker简介
  • 11.2 Docker的使用
  • 11.2.1 安装
  • 11.2.2 镜像
  • 11.2.3 容器
  • 11.2.4 容器实战:MySQL
  • 11.3 Docker与Spring Cloud微服务
  • 11.3.1 部署Eureka服务
  • 11.3.2 部署应用微服务
  • 11.4 微服务与Jenkins
  • 11.4.1 安装Jenkins
  • 11.4.2 Jenkins配置
  • 11.4.3 构建任务
  • 11.5 微服务编排
展开全部

评分及书评

评分不足
1个评分

出版方

机械工业出版社有限公司

机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。