首页生活百科详情

Spring Cloud实战

来源网络2023-01-02 17:50:34 62
Spring Cloud实战

Spring Cloud实战

《Spring Cloud实战》是清华大学出版社出版的一本图书,作者是胡书敏。

基本介绍

  • 书名:Spring Cloud实战
  • 作者:胡书敏 
  • ISBN:9787302527220
  • 定价:59元
  • 出版社:清华大学出版社 
  • 出版时间:2019年7月1日 
  • 印次:1-1
  • 印刷日期:2019.05.24

图书内容

本书以Spring Cloud微服务架构为主线,依次通过案例讲述Spring Cloud的常用组件。看完本书后,大家会比较熟悉基于 Spring Cloud微服务架构的开发技术。 本书分为11章,内容包括Spring Boot微服务入门、Spring Data连线资料库、Eureka服务治理框架、Ribbon负载均衡组件、HyStrix服务容错组件、Feign服务调用框架、Zuul网关组件、用Spring Cloud Config搭建配置中心、讯息机制与讯息驱动框架、微服务健康检查与服务跟蹤,最后给出一个SpringBoot开发Web的实战案例。 如果你想了解Spring Cloud微服务架构,并想以此进阶到架构师,那幺本书是不错的选择。

目录

第1章 通过Spring Boot入门微服务 1
1.1 Spring Boot、Spring Cloud与微服务架构 1
1.1.1 通过和传统架构的对比了解微服务的优势 1
1.1.2 Spring Boot、Spring Cloud和微服务三者的关係 3
1.1.3 基于Netflix OSS的Spring Cloud的常用组件 4
1.2 通过Maven开发第一个Spring Boot项目 5
1.2.1 Maven是什幺,能带来什幺帮助 5
1.2.2 通过Maven开发Spring Boot的HelloWorld程式 6
1.2.3 Controller类里处理Restful格式的请求 9
1.2.4 @SpringBootApplication注解等价于其他3个注解 11
1.2.5 通过配置档案实现热部署 12
1.3 通过Actuator监控Spring Boot运行情况 12
1.3.1 準备待监控的项目 13
1.3.2 通过/info查看本站点的自定义信息 14
1.3.3 通过/health查看本站点的健康信息 14
1.3.4 通过/metrics查看本站点的各项指标信息 14
1.3.5 actuator在项目里的实际用法 15
1.4 本章小结 15
第2章 用Spring Data框架连线资料库 16
2.1 Spring Data框架概述 16
2.2 Spring Data通过JPA连线MySQL 17
2.2.1 连线MySQL的案例分析 ...
2.2.1连线MySQL的案例分析 17
2.2.2使用yml格式的配置档案 22
2.2.3通过profile档案映射到不同的运行环境 23
2.3通过JPA实现各种关联关係 24
2.3.1一对一关联 24
2.3.2一对多关联 28
2.3.3多对多关联 30
2.4本章小结 34
第3章服务治理框架:Eureka 35
3.1了解Eureka框架 35
3.1.1Eureka能干什幺 35
3.1.2Eureka的框架图 36
3.2构建基本的Eureka套用 36
3.2.1搭建Eureka伺服器 36
3.2.2编写作为服务提供者的Eureka客户端 38
3.2.3编写服务调用者的代码 40
3.2.4通过服务调用者调用服务 42
3.3实现高可用的Eureka集群 43
3.3.1集群的示意图 43
3.3.2编写相互注册的伺服器端代码 43
3.3.3服务提供者只需向其中一台伺服器注册 44
3.3.4修改服务调用者的代码 45
3.3.5正常场景下的运行效果 45
3.3.6一台伺服器宕机后的运行效果 46
3.4Eureka的常用配置信息 46
3.4.1查看客户端和伺服器端的配置信息 47
3.4.2设定心跳检测的时间周期 47
3.4.3设定自我保护模式 47
3.4.4其他常用配置信息 48
3.5本章小结 49
第4章负载均衡组件:Ribbon 50
4.1网路协定和负载均衡 50
4.1.1基于4层和7层的负载均衡策略 50
4.1.2硬体层和软体层的负载均衡方案比较 51
4.1.3常见的软体负载均衡策略 51
4.1.4Ribbon组件基本介绍 52
4.2编写基本的负载均衡程式 52
4.2.1编写伺服器端的代码 53
4.2.2编写客户端调用的代码 53
4.3Ribbon中重要组件的用法 55
4.3.1ILoadBalancer:负载均衡器接口 55
4.3.2IRule:定义负载均衡规则的接口 56
4.3.3IPing:判断伺服器是否可用的接口 57
4.4Ribbon整合Eureka组件 58
4.4.1整体框架的说明 59
4.4.2编写Eureka伺服器 60
4.4.3编写Eureka服务提供者 61
4.4.4在Eureka服务调用者里引入Ribbon 62
4.4.5重写IRule和IPing接口 64
4.4.6实现双伺服器多服务提供者的高可用效果 67
4.5配置Ribbon的常用参数 69
4.5.1参数的影响範围 69
4.5.2归纳常用的参数 69
4.5.3在类里设定Ribbon参数 70
4.6本章小结 71
第5章服务容错组件:HyStrix 72
5.1在微服务系统里引入Hystrix的必要性 72
5.1.1通过一些算术题了解系统发生错误的机率 72
5.1.2用通俗方式总结Hystrix的保护措施 73
5.2通过案例了解Hystrix的各种使用方式 74
5.2.1準备服务提供者 74
5.2.2以同步方式调用正常工作的服务 75
5.2.3以异步方式调用服务 77
5.2.4调用不可用服务会启动保护机制 78
5.2.5调用Hystrix时引入快取 80
5.2.6归纳Hystrix的基本开发方式 82
5.3通过Hystrix实践各种容错保护机制 82
5.3.1强制开启或关闭断路器 82
5.3.2根据流量情况按命令组开启断路器 83
5.3.3降级服务后的自动恢复尝试措施 85
5.3.4执行绪级别的隔离机制 87
5.3.5信号量级别的隔离机制 89
5.3.6通过合併批量处理URL请求 90
5.4Hystrix与Eureka的整合 94
5.4.1準备Eureka伺服器项目 94
5.4.2服务提供者的代码结构 95
5.4.3在服务提供者项目里引入断路器机制 96
5.4.4在服务调用者项目里引入合併请求机制 97
5.5本章小结 100
第6章服务调用框架:Feign 101
6.1通过案例快速上手Feign 101
6.1.1编写服务注册项目和服务提供项目 101
6.1.2通过Feign调用服务 102
6.1.3通过比较其他调用方式来了解Feign的封装性 104
6.2Feign的常见使用方式 105
6.2.1通过继承改善项目架构 105
6.2.2通过注解输出调用日誌 107
6.2.3压缩请求和返回以提升访问效率 108
6.3通过Feign使用Ribbon负载均衡特性 109
6.3.1準备Eureka伺服器以及多个服务提供者 109
6.3.2通过Feign以Ribbon负载均衡的方式调用服务 110
6.4Feign整合Hystrix 111
6.5本章小结 113
第7章微服务架构的网关组件:Zuul 114
7.1通过案例入门Zuul组件的用法 114
7.1.1搭建简单的基于Zuul组件的网关 114
7.1.2通过运行结果体会Zuul转发请求的效果 116
7.2Zuul请求过滤器 116
7.2.1http请求生命周期和Zuul过滤器 116
7.2.2过滤器的常规用法 117
7.2.3指定过滤器的优先权 119
7.2.4通过error过滤器处理路由时的异常情况 121
7.2.5动态增加过滤器 123
7.3通过Zuul实现路由功能的实践方案 126
7.3.1简单路由的做法 126
7.3.2通过forward跳转到本地页面 127
7.3.3路由到具体的服务 128
7.3.4定义映射url请求的规则 129
7.3.5配置路由的例外规则 130
7.4Zuul天然整合了Ribbon和Hystrix 131
7.4.1案例的準备工作 131
7.4.2Zuul组件包含Ribbon和Hystrix模组的依赖 132
7.4.3以Ribbon负载均衡的方式实现路由 132
7.4.4在Zuul网关中引入Hystrix 134
7.5本章小结 136
第8章用SpringCloudConfig搭建配置中心 137
8.1通过SpringCloudConfig搭建基于Git的配置中心 137
8.1.1SpringCloudConfig中伺服器和客户端的体系结构 137
8.1.2在Git上準备配置档案 138
8.1.3在伺服器中连线Git仓库 139
8.1.4在客户端读取配置档案 141
8.2搭建基于SVN的配置中心 142
8.2.1準备SVN环境 143
8.2.2编写基于SVN的配置伺服器代码 144
8.2.3在套用中读取基于SVN客户端的配置 145
8.3伺服器和客户端的其他常见用法 146
8.3.1总结配置客户端和伺服器的作用 146
8.3.2在服务端验证配置仓库访问许可权 147
8.3.3在服务端配置身份验证信息 147
8.3.4访问配置仓库子目录中的配置 148
8.3.5在本地备份远端仓库中的配置 149
8.3.6用本地属性覆盖远端属性 150
8.3.7failFast属性 151
8.3.8与failFast配套的重试相关参数 151
8.4SpringCloudConfig与Eureka的整合 153
8.4.1本案例的体系结构和项目说明 153
8.4.2準备资料库环境和Git配置信息 154
8.4.3配置伺服器与Eureka伺服器合二为一 154
8.4.4配置客户端与Eureka客户端合二为一 156
8.4.5查看运行效果 158
8.5本章小结 158
第9章讯息机制与讯息驱动框架 159
9.1在微服务中实现模组间的通信 159
9.1.1讯息代理和讯息中间件 159
9.1.2SpringCloud体系中的讯息汇流排 160
9.1.3SpringCloudStream:讯息驱动框架 160
9.2讯息中间件的案例 161
9.2.1RabbitMQ的安装步骤 161
9.2.2通过RabbitMQ传送和接收讯息的案例 162
9.2.3Kafka的安装步骤 165
9.2.4通过Kafka传送和接收讯息的案例 166
9.3通过讯息汇流排封装讯息中间件 168
9.3.1基于RabbitMQ的讯息汇流排案例 168
9.3.2基于Kafka的讯息汇流排案例 169
9.4SpringCloudStream组件的常见用法 170
9.4.1实现基于RabbitMQ的案例 170
9.4.2通过更换绑定器变更讯息中间件 173
9.4.3消费组案例演示 174
9.4.4讯息分区实例演示 175
9.5本章小结 177
第10章微服务健康检查与服务跟蹤 178
10.1通过SpringBootAdmin监控微服务 178
10.1.1监控单个服务 178
10.1.2与Eureka的整合 181
10.1.3设定报警邮件 184
10.2通过Sleuth组件跟蹤服务调用链路 185
10.2.1基于Sleuth案例的总体说明 185
10.2.2关于服务提供者案例的说明 186
10.2.3关于服务调用者案例的说明 186
10.2.4通过运行效果了解Sleuth组件 187
10.2.5通过Sleuth组件分析问题的一般方法 188
10.3整合Zipkin查询和分析日誌 188
10.3.1搭建Zipkin伺服器 188
10.3.2从Zipkin图表上查看Sleuth发来的日誌 189
10.3.3在MySQL中保存Zipkin数据 191
10.3.4如何根据Zipkin结果观察调用链路 193
10.4本章小结 194
第11章用SpringBoot开发Web案例 195
11.1在SpringBoot中整合JSP及MVC 195
11.1.1以Maven的形式创建Web项目 195
11.1.2在SpringBoot中引入JSP(基于Maven) 197
11.1.3在SpringBoot中引入MVC架构和资料库服务 198
11.2SpringSecurity与SpringBoot的整合 201
11.2.1身份验证的简单做法 201
11.2.2进行动态身份验证的做法 204
11.2.3SpringBootSecurity身份验证的开发要点 205
11.2.4根据用户的角色分配不同的资源 205
11.3在Web项目中整合Eureka、Ribbon等组件 210
11.3.1本案例的框架与包含的项目说明 210
11.3.2开发Eureka伺服器模组 211
11.3.3开发前端Web项目 211
11.3.4开发提供用户验证的项目 215
11.3.5开发提供账户查询功能的项目(含负载均衡) 216
11.4本章小结 219
标签:
随机快审展示 刷新 快审榜
加入快审,优先展示

加入VIP

发表评论

  • * 评论内容:
  •  

精彩评论

  • 无任何评论信息!
提交站点
提交文章
提交小程序
提交公众号