• Spring微服务实战
21年品牌 40万+商家 超1.5亿件商品

Spring微服务实战

全新正版 极速发货

47.43 6.0折 79 全新

库存2件

广东广州
认证卖家担保交易快速发货售后保障

作者(美)约翰·卡内尔(John Carnell) 著;陈文辉 译

出版社人民邮电出版社

ISBN9787115481184

出版时间2018-06

装帧平装

开本16开

定价79元

货号1201693651

上书时间2024-07-05

徐小智的书店

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介
约翰·卡内尔,是一位资历云工程师,拥有20年的Java开发经验。他大部分时间都在使用AWS平台构建基于电话的微服务。他的日常工作主要是设计和构建跨Java、Clojure和Go等多种技术平台的微服务。

目录
章欢迎迈入云世界,Spring1
1.1什么是微服务1
1.2什么是Spring,为什么它与微服务有关4
1.3在本书中读者会学到什么5
1.4为什么本书与你有关6
1.5使用SpringBoot来构建微服务6
1.6为什么要改变构建应用的方式10
1.7云到底是什么11
1.8为什么是云和微服务13
1.9微服务不只是编写代码14
1.9.1核心微服务开发模式15
1.9.2微服务路由模式16
1.9.3微服务客户端弹性模式17
1.9.4微服务安全模式18
1.9.5微服务日志记录和跟踪模式19
1.9.6微服务构建和部署模式20
1.10使用SpringCloud构建微服务22
1.10.1SpringBoot23
1.10.2SpringCloudConfig23
1.10.3SpringCloud服务发现24
1.10.4SpringCloud与NetflixHystrix和NetflixRibbon24
1.10.5SpringCloud与NetflixZuul24
1.10.6SpringCloudStream24
1.10.7SpringCloudSleuth24
1.10.8SpringCloudSecurity25
1.10.9代码供应25
1.11通过示例来介绍SpringCloud25
1.12确保本书的示例是有意义的27
1.13小结28
第2章使用SpringBoot构建微服务29
2.1架构师的故事:设计微服务架构31
2.1.1分解业务问题31
2.1.2建立服务粒度32
2.1.3互相交流:定义服务接口35
2.2何时不应该使用微服务36
2.2.1构建分布式系统的复杂性36
2.2.2服务器散乱36
2.2.3应用程序的类型36
2.2.4数据事务和一致性37
2.3开发人员的故事:用SpringBoot和Java构建微服务37
2.3.1从骨架项目开始37
2.3.2引导SpringBoot应用程序:编写引导类39
2.3.3构建微服务的入口:SpringBoot控制器40
2.4DevOps工程师的故事:构建运行时的严谨性44
2.4.1服务装配:打包和部署微服务46
2.4.2服务引导:管理微服务的配置47
2.4.3服务注册和发现:客户端如何与微服务通信48
2.4.4传达微服务的“健康状况”49
2.5将视角综合起来51
2.6小结52
第3章使用SpringCloud配置服务器控制配置53
3.1管理配置(和复杂性)54
3.1.1配置管理架构55
3.1.2实施选择56
3.2构建SpringCloud配置服务器58
3.2.1创建SpringCloudConfig引导类61
3.2.2使用带有文件系统的SpringCloud配置服务器62
3.3将SpringCloudConfig与SpringBoot客户端集成64
3.3.1建立许可证服务对SpringCloudConfig服务器的依赖65
3.3.2配置许可证服务以使用SpringCloudConfig66
3.3.3使用SpringCloud配置服务器连接数据源69
3.3.4使用@Value注解直接读取属性72
3.3.5使用SpringCloud配置服务器和Git73
3.3.6使用SpringCloud配置服务器刷新属性73
3.4保护敏感的配置信息75
3.4.1下载并安装加密所需的OracleJCEjar75
3.4.2创建加密密钥76
3.4.3加密和解密属性76
3.4.4配置微服务以在客户端使用加密78
3.5最后的想法79
3.6小结80
第4章服务发现81
4.1我的服务在哪里82
4.2云中的服务发现84
4.2.1服务发现架构84
4.2.2使用Spring和NetflixEureka进行服务发现实战87
4.3构建SpringEureka服务88
4.4通过SpringEureka注册服务90
4.5使用服务发现来查找服务93
4.5.1使用SpringDiscoveryClient查找服务实例95
4.5.2使用带有Ribbon功能的SpringRestTemplate调用服务97
4.5.3使用NetflixFeign客户端调用服务98
4.6小结100
第5章使用SpringCloud和NetflixHystrix的客户端弹性模式101
5.1什么是客户端弹性模式102
5.1.1客户端负载均衡模式103
5.1.2断路器模式103
5.1.3后备模式103
5.1.4舱壁模式104
5.2为什么客户端弹性很重要104
5.3进入Hystrix107
5.4搭建许可服务器以使用SpringCloud和Hystrix107
5.5使用Hystrix实现断路器109
5.5.1对组织微服务的调用超时111
5.5.2定制断路器的超时时间112
5.6后备处理113
5.7实现舱壁模式115
5.8基础进阶—微调Hystrix118
5.9线程上下文和Hystrix122
5.9.1ThreadLocal与Hystrix122
5.9.2HystrixConcurrencyStrategy实战125
5.10小结129
第6章使用SpringCloud和Zuul进行服务路由131
6.1什么是服务网关132
6.2SpringCloud和NetflixZuul简介133
6.2.1建立一个ZuulSpringBoot项目134
6.2.2为Zuul服务使用SpringCloud注解134
6.2.3配置Zuul与Eureka进行通信135
6.3在Zuul中配置路由135
6.3.1通过服务发现自动映射路由136
6.3.2使用服务发现手动映射路由137
6.3.3使用静态URL手动映射路由140
6.3.4动态重新加载路由配置142
6.3.5Zuul和服务超时143
6.4Zuul的真正威力:过滤器144
6.5构建个生成关联ID的Zuul前置过滤器147
6.6构建接收关联ID的后置过滤器155
6.7构建动态路由过滤器157
6.7.1构建路由过滤器的骨架159
6.7.2实现run()方法159
6.7.3转发路由161
6.7.4整合162
6.8小结163
第7章保护微服务164
7.1OAuth2简介165
7.2从小事做起:使用Spring和OAuth2来保护单个端点167
7.2.1建立EagleEyeOAuth2验证服务167
7.2.2使用OAuth2服务注册客户端应用程序168
7.2.3配置EagleEye用户171
7.2.4验证用户172
7.3使用OAuth2保护组织服务175
7.3.1将SpringSecurity和OAuth2jar添加到各个服务176
7.3.2配置服务以指向OAuth2验证服务176
7.3.3定义谁可以访问服务177
7.3.4传播OAuth2访问令牌180
7.4JSONWebToken与OAuth2183
7.4.1修改验证服务以颁发JWT令牌184
7.4.2在微服务中使用JWT188
7.4.3扩展JWT令牌189
7.4.4从JWT令牌中解析自定义字段191
7.5关于微服务安全的总结193
7.6小结195
第8章使用SpringCloudStream的事件驱动架构196
8.1为什么使用消息传递、EDA和微服务197
8.1.1使用同步请求-响应方式来传达状态变化198
8.1.2使用消息传递在服务之间传达状态更改199
8.1.3消息传递架构的缺点201
8.2SpringCloudStream简介202
8.3编写简单的消息生产者和消费者205
8.3.1在组织服务中编写消息生产者205
8.3.2在许可证服务中编写消息消费者210
8.3.3在实际操作中查看消息服务213
8.4SpringCloudStream用例:分布式缓存214
8.4.1使用Redis来缓存查找215
8.4.2定义自定义通道221
8.4.3将其全部汇集在一起:在收到消息时清除缓存222
8.5小结223
第9章使用SpringCloudSleuth和Zipkin进行分布式跟踪224
9.1SpringCloudSleuth与关联ID225
9.1.1将SpringCloudSleuth添加到许可证服务和组织服务中226
9.1.2剖析SpringCloudSleuth跟踪226
9.2日志聚合与SpringCloudSleuth227
9.2.1SpringCloudSleuth与Papertrail实现实战229
9.2.2创建Papertrail账户并配置syslog连接器230
9.2.3将Docker输出重定向到Papertrail232
9.2.4在Papertrail中搜索SpringCloudSleuth的跟踪ID234
9.2.5使用Zuul将关联ID添加到HTTP响应235
9.3使用OpenZipkin进行分布式跟踪237
9.3.1添加SpringCloudSleuth和Zipkin依赖项238
9.3.2配置服务以指向Zipkin238
9.3.3安装和配置Zipkin服务器239
9.3.4设置跟踪级别240
9.3.5使用Zipkin跟踪事务241
9.3.6可视化更复杂的事务243
9.3.7捕获消息传递跟踪244
9.3.8添加自定义跨度246
9.4小结248
0章部署微服务250
10.1EagleEye:在云中建立核心基础设施251
10.1.1使用亚马逊的RDS创建PostgreSQL数据库253
10.1.2在AWS中创建Redis集群257
10.1.3创建ECS集群258
10.2超越基础设施:部署EagleEye262
10.3构建和部署管道的架构265
10.4构建和部署管道实战268
10.5开始构建和部署管道:GitHub和TravisCI270
10.6使服务能够在TravisCI中构建270
10.6.1构建的核心运行时配置273
10.6.2安装预构建工具275
10.6.3执行构建277
10.6.4标记源代码277
10.6.5构建微服务并创建Docker镜像279
10.6.6将镜像推送到DockerHub279
10.6.7在AmazonECS中启动服务280
10.6.8启动平台测试280
10.7关于构建和部署管道的总结282
10.8小结282
附录A在桌面运行云服务283
附录BOAuth2授权类型291

内容摘要
本书以一个名为EagleEye的项目为主线,介绍云、微服务等概念以及SpringBoot和SpringCloud等诸多Spring项目,并介绍如何将EagleEye项目一步一步地从单体架构重构成微服务架构,进而将这个项目拆分成众多微服务,让它们运行在各自的Docker容器中,实现持续集成/持续部署,并很终自动部署到云环境(Amazon)中。针对在重构过程中遇到的各种微服务开发会面临的典型问题(包括开发、测试和运维等问题),本书介绍了解决这些问题的核心模式,以及在实战中如何选择特定SpringCloud子项目或其他工具解决这些问题。
本书适合拥有构建分布式应用程序的经验、拥有Spring的知识背景以及对学习构建基于微服务的应用程序感兴趣的Java开发人员阅读。对于希望使用微服务构建基于云的应用程序,以及希望了解如何将基于微服务的应用部署到云上的开发人员,本书也具有很好的学习参考价值。

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP