类似推荐
编辑推荐
本书内容通俗易懂,每章都结合实例进行讲解,特别适合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)等相关知识。
作者简介
作者董超,资深程序员、架构师。从事软件研发十多年,擅长移动互联网和行业应用架构。曾经多次主导大型国有企业系统和移动互联网平台的研发。现专注于IoT(物联网)及其应用平台的研发。
章节目录
版权信息
前言
本书特色
本书内容
本书源代码获取方式
本书适合哪些读者阅读
售后服务
第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 微服务编排
SpringCloud微服务架构开发实战是2018年由机械工业出版社华章分社出版,作者董超。
得书感谢您对《SpringCloud微服务架构开发实战》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。