Spring Cloud Development in Practice
Tags
Summary
The book is divided into 15 chapters that provide a comprehensive explanation of various Spring Cloud components, with targeted comparisons of alternative products for specific components. These include Spring Cloud registry centers Eureka and Consul; gateway components Zuul and Gateway; asynchronous message queue Kafka; and configuration center Config. The chapters are concise and to the point, aiming to explain the entire Spring Cloud technology system with the most concise text and code, so that readers will benefit greatly from reading.
Editor's review
Who it's for
A good fit for
- Programming practitioners with a Java foundation who are preparing to get started with microservice development
- Development beginners who need a systematic understanding of common Spring Cloud components and technology selection
- Instructors teaching Java or microservices courses, for organizing teaching examples
- Students doing course design or graduation projects who need to build microservices hands-on
Not a good fit for
- Readers with no Java or Spring foundation at all, who first need to build up the language basics
- Senior developers seeking source-level principles and architectural governance
- Readers who only want to look up the latest version APIs and are unwilling to write code
Reading tips
- First read through the early chapters to set up a service registry and basic services, then implement each component hands-on chapter by chapter.
- When you reach the component comparison sections, record the rationale for selection and check the differences in current versions against official documentation.
- Run each chapter's code yourself before moving on; when you hit an error, first check the configuration and dependency versions.
- After finishing, use a small multi-service example to connect registry, gateway, configuration, and messaging into a complete chain.
About the publisher
The Publishing House of Electronics Industry is a comprehensive publisher distinguished by its focus on electronic information and related fields. Judging from the more than 3,000 titles in its catalogue, its publishing covers programming and design, artificial intelligence, computer science, finance and economics, photography, and social sciences, attending both to cutting-edge technology and to general readers. Representative titles include Factor Investing: Methods and Practice, x86 Assembly Language: From Real Mode to Protected Mode, The RISC-V Reader, Artificial Intelligence: Speech Recognition, Understanding and Practice, Phased Array Radar Technology, Radar Target Characteristics, and 100 Go Mistakes and How to Avoid Them, most of which centre on technical methods and engineering practice. Its authors include Shi Chuan, Li Zhong, Wang Xiaobo, David Patterson, Andrew Waterman, and Yu Zihao, among others from China and abroad. Owing to limited public information, no further publishing features are elaborated here.
Contents
- 版权信息
- 内容简介
- 前言
- 第1章 Spring Cloud微服务简介
- 1.1 单体应用架构
- 1.1.1 单体应用架构简介
- 1.1.2 单体应用架构的优势
- 1.1.3 单体应用架构的劣势
- 1.2 微服务架构
- 1.2.1 微服务架构简介
- 1.2.2 微服务的来源
- 1.2.3 微服务的优点
- 1.2.4 微服务的缺点
- 1.2.5 微服务架构的选择
- 1.3 Spring Cloud介绍
- 1.3.1 Spring Cloud的概念
- 1.3.2 Spring Cloud的组件
- 1.3.3 Spring Cloud版本介绍
- 1.3.4 Spring Boot简介
- 1.3.5 Spring Boot和Spring Cloud的关系
- 1.4 本章小结
- 第2章 微服务开发工具
- 2.1 IDEA基本配置
- 2.1.1 IDEA的安装
- 2.1.2 字体设置
- 2.1.3 自动编译开源
- 2.1.4 代码提示设置
- 2.1.5 Tab多行显示
- 2.1.6 去掉行尾空格
- 2.1.7 设置行号显示
- 2.1.8 项目文件编码
- 2.1.9 自动导入包
- 2.2 IDEA快捷键
- 2.2.1 快捷键函数收尾
- 2.2.2 去掉无效引用
- 2.2.3 打开最近使用的文件
- 2.2.4 快速搜索文件
- 2.2.5 快速查找方法
- 2.2.6 快速搜索目录
- 2.2.7 快速切换编辑框
- 2.2.8 查看层级关系
- 2.2.9 展开成员变量
- 2.2.10 方法参数类型提示
- 2.2.11 查看方法调用
- 2.2.12 同词编辑
- 2.3 代码相关技巧
- 2.3.1 打开最近的项目
- 2.3.2 本地代码历史
- 2.3.3 展示类成员变量
- 2.3.4 内存展示
- 2.3.5 查看项目结构
- 2.3.6 多线程断点调试
- 2.3.7 同步显示类
- 2.4 IDEA代码模板配置
- 2.4.1 代码模板定制
- 2.4.2 注释生成
- 2.4.3 生成Java类模板
- 2.5 IDEA插件介绍
- 2.5.1 阿里巴巴规范插件
- 2.5.2 stackoverflow搜索插件
- 2.5.3 Maven Helper
- 2.5.4 POJO to JSON插件
- 2.5.5 GsonFormat插件
- 2.5.6 Grep Console日志查询工具
- 2.5.7 Redis可视化工具
- 2.5.8 代码高亮工具
- 2.5.9 翻译插件
- 2.5.10 字符串标记JSON
- 2.6 本章小结
- 第3章 注册中心
- 3.1 Eureka客户端
- 3.1.1 Eureka客户端依赖
- 3.1.2 Eureka客户端文件配置
- 3.2 Eureka服务端
- 3.2.1 Eureka服务端组件依赖
- 3.2.2 Eureka服务端文件配置
- 3.2.3 Eureka服务端启动类
- 3.2.4 注册中心启动
- 3.3 Eureka常用配置
- 3.3.1 Eureka权限认证
- 3.3.2 Eureka健康检查
- 3.4 Consul注册中心
- 3.4.1 Consul安装和启动
- 3.4.2 Consul服务端依赖
- 3.4.3 Consul服务端文件配置
- 3.4.4 Consul服务端启动类
- 3.4.5 Consul客户端文件配置
- 3.4.6 Consul客户端业务逻辑
- 3.5 本章小结
- 第4章 Feign客户端
- 4.1 Feign实例
- 4.1.1 Feign项目结构
- 4.1.2 Feign客户端依赖
- 4.1.3 Feign客户端文件配置
- 4.1.4 Feign客户端启动类配置
- 4.1.5 Feign的配置方式
- 4.1.6 Spring两种类型的bean对象
- 4.1.7 Feign客户端接口定义
- 4.1.8 Feign服务端依赖
- 4.1.9 Feign服务端文件配置
- 4.1.10 Feign服务端启动类
- 4.1.11 Feign服务端控制器
- 4.1.12 Feign项目启动
- 4.2 Feign请求
- 4.2.1 Feign get请求
- 4.2.2 Feign post请求
- 4.2.3 Feign服务降级
- 4.3 Feign高级配置
- 4.3.1 Feign安全认证配置
- 4.3.2 Feign超时配置
- 4.3.3 Feign日志配置
- 4.3.4 Feign核心类
- 4.4 Feign整合Zipkin
- 4.4.1 项目结构
- 4.4.2 Zipkin服务端依赖
- 4.4.3 Zipkin客户端依赖
- 4.4.4 Zipkin客户端配置文件
- 4.5 Hystrix注册中心
- 4.5.1 Hystrix原理
- 4.5.2 Hystrix项目结构
- 4.5.3 Hystrix注册中心依赖
- 4.5.4 Hystrix文件配置
- 4.5.5 Hystrix相关参数配置
- 4.5.6 Hystrix隔离策略
- 4.5.7 Eureka启动
- 4.6 构建Hystrix服务端
- 4.6.1 Hystrix服务端组件依赖
- 4.6.2 Hystrix文件配置
- 4.6.3 Hystrix启动类
- 4.6.4 Eureka配置文件
- 4.7 构建Hystrix客户端
- 4.7.1 Hystrix客户端依赖
- 4.7.2 Hystrix客户端启动配置
- 4.7.3 Hystrix增加控制类
- 4.7.4 Hystrix回退支持
- 4.8 本章小结
- 第5章 Ribbon负载均衡器
- 5.1 Ribbon注册中心
- 5.1.1 Eureka实例
- 5.1.2 Ribbon服务端实例
- 5.1.3 Ribbon客户端实例
- 5.1.4 Ribbon负载均衡
- 5.2 Ribbon常用配置
- 5.2.1 Ribbon注册中心状态设置
- 5.2.2 Ribbon注册中心超时设置
- 5.2.3 Ribbon路由配置
- 5.3 本章小结
- 第6章 Config配置中心
- 6.1 Config服务端
- 6.2 Config客户端
- 6.2.1 Config客户端依赖
- 6.2.2 Config客户端文件配置
- 6.2.3 动态配置刷新
- 6.3 本章小结
- 第7章 第三方配置中心
- 7.1 Apollo简介
- 7.1.1 Apollo的结构
- 7.1.2 Apollo配置环境
- 7.1.3 Apollo数据库配置
- 7.1.4 Apollo配置中心启动
- 7.2 Apollo配置中心
- 7.2.1 Apollo创建配置
- 7.2.2 Apollo新增配置
- 7.2.3 Apollo发布配置
- 7.2.4 Apollo启动
- 7.3 Apollo集群
- 7.3.1 集群配置
- 7.3.2 管理员工具
- 7.3.3 Apollo实例
- 7.4 Nacos配置中心
- 7.4.1 Nacos的安装
- 7.4.2 项目结构
- 7.4.3 Nacos服务端依赖
- 7.4.4 Nacos服务端
- 7.4.5 Nacos配置管理
- 7.5 ZooKeeper配置中心
- 7.5.1 ZooKeeper简介
- 7.5.2 使用场景
- 7.5.3 节点监控
- 7.5.4 ZooKeeper领导者选举
- 7.5.5 Watcher机制
- 7.5.6 ZooKeeper部署
- 7.5.7 zkui登录页面
- 7.5.8 ZooKeeper实例
- 7.6 本章小结
- 第8章 Zuul网关
- 8.1 Zuul基础实例
- 8.1.1 Zuul的作用
- 8.1.2 Zuul依赖
- 8.1.3 Zuul文件配置
- 8.1.4 启动类配置
- 8.2 Zuul实例
- 8.2.1 创建Eureka注册中心
- 8.2.2 Eureka客户端依赖
- 8.2.3 Eureka客户端文件配置
- 8.3 Zuul高级特性
- 8.3.1 路由前缀
- 8.3.2 本地跳转
- 8.3.3 过滤器实现种类
- 8.3.4 入口规则配置
- 8.3.5 Zuul过滤器生命周期
- 8.3.6 Zuul过滤器禁用
- 8.3.7 Zuul过滤器的数据传递
- 8.3.8 服务降级处理
- 8.3.9 全局限流配置
- 8.3.10 局部限流配置
- 8.4 本章小结
- 第9章 Gateway网关
- 9.1 Gateway简介
- 9.1.1 Gateway的组成
- 9.1.2 Gateway实例
- 9.1.3 Gateway转发规则
- 9.2 本章小结
- 第10章 Admin管理中心
- 10.1 Admin实例
- 10.1.1 Admin服务端
- 10.1.2 Admin客户端
- 10.1.3 创建Eureka项目
- 10.1.4 查看服务日志
- 10.2 Admin高级特性
- 10.2.1 集成Hystrix UI展示
- 10.2.2 Admin安全配置
- 10.2.3 拦截监控端点处理
- 10.2.4 Session监控
- 10.2.5 展示客户端JMX信息
- 10.2.6 监控客户端配置
- 10.2.7 服务端集成Hystrix UI展示
- 10.2.8 监控告警服务
- 10.3 本章小结
- 第11章 文档管理工具
- 11.1 Swagger实例构建
- 11.1.1 Swagger响应
- 11.1.2 Springfox-Swagger简介
- 11.1.3 Swagger相关依赖
- 11.1.4 Swagger文件配置
- 11.1.5 Swagger启动
- 11.2 Swagger注解
- 11.2.1@Api接口注解
- 11.2.2@ApiIgnore隐藏接口
- 11.2.3@ApiOperation方法注解
- 11.2.4@ApiImplicitParam参数注解
- 11.2.5@ApiResponse和@ApiResponses响应注解
- 11.2.6@ApiModel参数注解
- 11.2.7@ApiModelProperty字段注解
- 11.3 Swagger实例
- 11.3.1 项目结构
- 11.3.2 项目配置文件
- 11.3.3 权限模块
- 11.3.4 用户模块
- 11.3.5 订单模块
- 11.3.6 支付模块
- 11.3.7 商城模块
- 11.3.8 启动应用
- 11.3.9 请求认证
- 11.4 Postman使用方式
- 11.4.1 Postman基本使用方法
- 11.4.2 Postman主页
- 11.4.3 创建新的接口
- 11.4.4 接口集合
- 11.5 本章小结
- 第12章 MongoDB数据库
- 12.1 MongoDB简介
- 12.1.1 MongoDB的结构
- 12.1.2 MongoDB的特点
- 12.1.3 应用场景
- 12.1.4 可视化客户端
- 12.1.5 下载和安装
- 12.2 MongoDB实例
- 12.2.1 MongoDB依赖
- 12.2.2 MongoDB创建数据库
- 12.2.3 创建实体
- 12.2.4 用户方法
- 12.2.5 订单方法
- 12.2.6 支付方法
- 12.2.7 商品方法
- 12.3 MongoDB高级特性
- 12.3.1 MongoDB存储引擎
- 12.3.2 WiredTiger引擎
- 12.3.3 In-Memory引擎
- 12.3.4 不同存储引擎的区别
- 12.3.5 写安全机制
- 12.3.6 事务管理
- 12.3.7 数据回滚机制
- 12.3.8 MongoDB数据备份
- 12.3.9 MongoDB内存释放
- 12.3.10 MongoDB复制集
- 12.3.11 MongoDB元数据
- 12.3.12 MongoDB分片
- 12.4 本章小结
- 第13章 Redis缓存
- 13.1 Redis的基础用法
- 13.1.1 Redis的安装和启动
- 13.1.2 Redis可视化客户端
- 13.2 Redis实例
- 13.2.1 Redis组件
- 13.2.2 Redis信息配置
- 13.2.3 Redis key值存在判断
- 13.2.4 Redis设置key值
- 13.2.5 Redis获取key值
- 13.2.6 Redis缓存值
- 13.2.7 Redis缓存时间
- 13.2.8 Redis缓存过期时间设置
- 13.2.9 Redis获取缓存时间
- 13.2.10 Redis缓存删除
- 13.2.11 Redis缓存集合添加
- 13.2.12 Redis缓存集合查询
- 13.2.13 Redis根据key获取set集合
- 13.2.14 Redis整合缓存方法
- 13.2.15 设置key在指定时间过期
- 13.2.16 模糊匹配删除key
- 13.2.17 持久化key
- 13.2.18 哈希存储
- 13.2.19 读取哈希值
- 13.2.20 删除哈希值
- 13.3 Redis高级特性
- 13.3.1 Redis内部结构
- 13.3.2 最大缓存配置
- 13.3.3 Redis容量估算
- 13.3.4 Redis数据淘汰策略
- 13.3.5 Redis缓存算法
- 13.3.6 Redis事务
- 13.3.7 分区
- 13.3.8 Redis的序列化
- 13.3.9 Redis过期键删除策略
- 13.3.10 Redis锁机制
- 13.3.11 Redis单线程
- 13.3.12 Redis常见注解
- 13.3.13 Redis集群模式
- 13.3.14 持久化机制
- 13.3.15 Redis危险命令
- 13.4 缓存异常情况
- 13.4.1 缓存雪崩
- 13.4.2 缓存穿透
- 13.4.3 缓存击穿
- 13.5 本章小结
- 第14章 异步消息队列Kafka
- 14.1 Kafka基本介绍
- 14.1.1 Kafka的定义和组件
- 14.1.2 Kafka消息协议
- 14.1.3 Kafka的优点
- 14.1.4 Kafka环境部署
- 14.1.5 Kafka可视化工具
- 14.2 Kafka实例
- 14.2.1 Kafka依赖
- 14.2.2 Kafka消息消费者
- 14.2.3 Kafka消息生产者
- 14.2.4 消息体构造
- 14.3 Kafka高级机制
- 14.3.1 Kafka分区机制
- 14.3.2 Kafka流式处理
- 14.3.3 Kafka副本和备份
- 14.3.4 消息持久化
- 14.3.5 数据存储
- 14.3.6 Kafka消费模型
- 14.3.7 Kafka日志配置
- 14.3.8 Kafka负载均衡
- 14.3.9 Kafka单元测试
- 14.4 Kafka常见问题
- 14.4.1 消息可靠性
- 14.4.2 Kafka消息丢失的问题
- 14.4.3 顺序消费
- 14.4.4 重复消费
- 14.5 Bus整合Kafka
- 14.5.1 Bus架构
- 14.5.2 项目结构
- 14.5.3 Bus和Kafka
- 14.5.4 项目启动
- 14.5.5 指定刷新范围
- 14.6 Bus整合RabbitMQ
- 14.6.1 Erlang安装
- 14.6.2 Bus服务端文件配置
- 14.6.3 Bus启动
- 14.7 本章小结
FAQ
Can I read this book directly without a microservices background?
The component versions in the book are somewhat old—is it still worth reading?
What is the use of the book's comparisons of alternative components?
Comments
Find this book
This site is an index: you start “Search all sources” in your browser, and the entries it lists all point to third-party sites; please judge their availability yourself.
About the author
Xu Wencong is a Chinese author about whom very limited information is publicly available. One work by this author is known: Spring Cloud Development in Practice, which is classified under programming and design. Judging from the subject matter, the author focuses on the practice of microservice development based on Spring Cloud, a kind of technical writing aimed at developers that emphasizes practical application rather than extended theoretical discussion. Since only this one work is included in the collection, it is not yet possible to assess the full range of the author's writing style or to trace a broader body of work; what can be confirmed is that this book is the main entry point for readers to understand the author's technical approach. For readers who wish to learn Spring Cloud application development, practical books of this kind often serve as an introduction and reference, with the author organizing content around concrete development scenarios to help readers understand how to use the relevant technical frameworks. Public information on Xu Wencong's education, professional experience, and other works is limited, and no speculation is offered here.