• Kubernetes原生微服务开发
  • Kubernetes原生微服务开发
21年品牌 40万+商家 超1.5亿件商品

Kubernetes原生微服务开发

全新正版 极速发货

61.36 6.3折 98 全新

库存6件

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

作者(美)约翰·克林甘,(美)肯·芬尼根

出版社清华大学出版社

ISBN9787302630623

出版时间2023-06

装帧平装

开本32开

定价98元

货号1202898621

上书时间2024-09-05

谢岳书店

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

   商品详情   

品相描述:全新
商品描述
作者简介
John Clingan 是红帽高级产品主管,研究方向是企业级Java标准和Quarkus。
Ken Finnigan 是Workday高级软件工程师主管,此前在红帽的Quarkus团队工作。

目录
第Ⅰ部分 基础知识

第1章 Quarkus、MicroProfile和Kubernetes 简介.3

1.1 什么是微服务.3

1.1.1 微服务的兴起.6

1.1.2 微服务架构.6

1.1.3 微服务规范的需求.7

1.2 MicroProfile规范.7

1.2.1 MicroProfile的发展历程.8

1.2.2 MicroProfile社区核心原则.9

1.3 Quarkus.10

1.3.1 快乐开发.10

1.3.2 对MicroProfile的支持.11

1.3.3 运行时效率.11

1.4 Kubernetes.12

1.5 Kubernetes原生微服务.15

1.6 本章小结.16

第2章 初次开发Quarkus应用.19

2.1 创建项目.19

2.2 使用实时编码进行开发.24

2.3 编写测试.32

2.4 生成原生可执行程序.37

2.5 在Kubernetes上运行应用.40

2.5.1 生成KubernetesYAML.40

2.5.2 应用打包.43

2.5.3 应用部署与运行.43

2.6 本章小结.45

第Ⅱ部分 微服务开发

第3章 微服务配置.49

3.1 MicroProfile Config架构概述.50

3.2 访问配置.50

3.3 银行服务.51

3.3.1 创建银行服务.51

3.3.2 配置银行服务的名称字段.53

3.4 配置源.54

3.5 配置mobileBanking字段.57

3.6 使用@ConfigProperties对配置属性分组.57

3.7 Quarkus特有的配置功能.59

3.7.1 Quarkus配置编组.59

3.7.2 配置属性表达式.60

3.7.3 Quarkus ConfigMapping功能.61

3.7.4 运行期和构建期配置属性.62

3.8 Kubernetes上的配置.63

3.8.1 Kubernetes上的常见配置源.63

3.8.2 在Quarkus应用中使用ConfigMap.65

3.8.3 编辑ConfigMap.66

3.8.4 Kubernetes Secret.67

3.9 本章小结.69

第4章 使用Panache访问数据.71

4.1 数据源.71

4.2 JPA.73

4.3 简化数据库开发.78

4.3.1 活动记录.78

4.3.2 数据仓储.81

4.3.3 数据访问模式选型.83

4.4 部署到Kubernetes.84

4.4.1 部署PostgreSQL数据库.84

4.4.2 打包与部署.85

4.5 本章小结.86

第5章 微服务客户端.87

5.1 MicroProfile REST Client规范.88

5.2 定义服务接口.89

5.2.1 CDI REST客户端.90

5.2.2 以编程方式使用REST客户端.95

5.2.3 选用CDI还是编程式API.96

5.2.4 异步响应类型.96

5.3 定制REST客户端.98

5.3.1 客户端请求头.98

5.3.2 声明提供程序.101

5.4 本章小结.106

第6章 应用的健康管理.107

6.1 开发者在应用健康管理领域日益重要的地位.107

6.2 MicroProfile Health 规范.108

6.2.1 存活状态与就绪状态.109

6.2.2 确定存活状态与就绪状态.109

6.3 开始学习MicroProfile Health.110

6.3.1 账户服务中的MicroProfileHealth存活状态.112

6.3.2 为账户服务创建存活健康检查.113

6.3.3 账户服务的MicroProfile Health就绪状态.114

6.3.4 禁用第三方就绪健康检查.115

6.3.5 创建新的就绪健康检查.115

6.3.6 Quarkus健康分组.118

6.3.7 使用Quarkus健康状态界面.119

6.4 Kubernetes存活和就绪探针.120

6.4.1 定制健康检查属性.121

6.4.2 部署到Kubernetes.122

6.4.3 测试Kubernetes 中的就绪健康检查.124

6.5 本章小结.126

第7章 应用韧性策略.127

7.1 韧性策略简介.127

7.2 用@Asynchronous 启用单独的线程执行方法.128

7.3 用舱壁模式并发.128

7.4 在交易服务中使用舱壁.130

7.5 以降级处理的方式处理异常.131

7.6 为调用指定超时.132

7.7 用@Retry 从临时故障中恢复.135

7.8 用熔断器避免持续故障.136

7.8.1 MicroProfile Fault Tolerance规范中的@CircuitBreaker.136

7.8.2 熔断器的工作原理.137

7.8.3 更新交易服务,运用@CircuitBreaker.138

7.8.4 测试熔断器.140

7.9 用配置属性覆盖注解参数.142

7.10 部署到Kubernetes.144

7.11 本章小结.145

第8章 命令式世界的反应式编程.147

8.1 反应式编程的示例.147

8.2 反应式流.149

8.2.1 发布者、订阅者和处理者.149

8.2.2 回压的重要性.150

8.3 Quarkus中的反应式消息.152

8.3.1 借用生成器结合使用命令式与反应式编程.152

8.3.2 关于阻塞.155

8.3.3 以内存模式测试.157

8.4 原理分析.160

8.4.1 MicroProfile 反应式消息规范.160

8.4.2 消息内容和元数据.161

8.4.3 消息流中的消息.164

8.5 部署到Kubernetes.164

8.5.1 Minikube中的Apache Kafka .165

8.5.2 汇总所有步骤.167

8.6 本章小结.169

第9章 在Quarkus中开发Spring微服务.171

9.1 Quarkus与Spring API兼容性简介.171

9.2 Spring依赖注入和配置的兼容性.172

9.2.1 搭建Spring Cloud配置服务器.173

9.2.2 将Spring配置服务器用作配置源.174

9.2.3 将银行服务转换为使用Spring Configuration API.175

9.3 Quarkus 与Spring Web API的兼容性.176

9.4 Quarkus 与Spring Data JPA的兼容性.179

9.5 部署到Kubernetes.183

9.6 Spring API兼容性在Quarkus中的实现原理.184

9.7 常见的Quarkus/Spring 兼容性相关的问题.184

9.8 对比Spring Boot 与Quarkus的启动过程.185

9.9 本章小结.186

第Ⅲ部分 可观测性、API定义和微服务安全

第10章 记录指标.189

10.1 指标在微服务架构中的角色.189

10.2 了解MicroProfile Metrics规范.190

10.2.1 利用Prometheus 和Grafana绘制指标图线.191

10.2.2 MicroProfile Metrics规范.197

10.2.3 为账户服务添加埋点.201

10.2.4 为交易服务添加埋点.202

10.2.5 创建业务指标.209

10.2.6 MicroProfile Metrics 与MicroProfile Fault Tolerance、JAX-RS的集成.211

10.2.7 Micrometer指标.213

10.2.8 模拟繁忙的生产系统.215

10.3 本章小结.216

第11章 微服务跟踪. 217

11.1 跟踪的工作原理.218

11.2 Jaeger.219

11.2.1 跟踪采样.219

11.2.2 配置 Minikube环境.220

11.2.3 安装Jaeger.220

11.2.4 使用Jaeger跟踪微服务.222

11.3 跟踪的规范.226

11.3.1 OpenTracing.226

11.3.2 MicroProfile OpenTracing .227

11.3.3 OpenTelemetry.227

11.4 在应用中定制跟踪.228

11.4.1 使用@Traced.228

11.4.2 注入跟踪器.228

11.4.3 跟踪数据库调用.230

11.4.4 跟踪Kafka消息.232

11.5 本章小结.238

第12章 API可视化.239

12.1 在Swagger UI中查看OpenAPI文档.240

12.1.1 启用OpenAPI.240

12.1.2 Swagger UI.242

12.2 MicroProfile OpenAPI.244

12.2.1 应用信息.244

12.2.2 定制输出内容的结构.246

12.2.3 定义操作.247

12.2.4 操作的响应.248

12.2.5 为操作添加标签.251

12.2.6 过滤OpenAPI的内容.252

12.3 设计先行开发.253

12.3.1 从文件加载OpenAPI.253

12.3.2 混用文件与注解.254

12.4 代码先行还是OpenAPI先行.255

12.5 本章小结.255

第13章 微服务安全.257

13.1 认证和授权简介.257

13.2 使用基于文件的认证与授权.259

13.3 基于OpenID Connect的认证与授权.263

13.3.1 OpenID Connect(OIDC)简介.264

13.3.2 OIDC 与Keycloak.264

13.3.3 使用OpenID Connect访问受保护的资源.266

13.3.4 测试授权码流程.268

13.4 JSON Web令牌和MicroProfile JWT.271

13.4.1 JWT令牌的头部.272

13.4.2 JWT令牌的正文.272

13.4.3 JWT签名.274

13.5 使用MicroProfile JWT为交易服务添加安全保护.276

13.6 传递JWT.278

13.6.1 为账户服务API 端点添加安全保护.278

13.6.2 由交易服务向账户服务传递JWT令牌.279

13.7 在Kubernetes上运行服务.280

13.8 本章小结.281

内容摘要
运用新的“Kubernetes优先”工具高效地开发微服务!Quarkus与容器和Kubernetes的结合浑然天成,从根本上简化了微服务的开发与部署。Quarkus这个功能强大的框架从一开始就是基于Java构建的,因而能与现有的JVM代码库无缝集成,极大地缩短了启动时间,减少了内存消耗量。在《Kubernetes原生微服务开发》的指导下,你将使用容器、Kubernetes和Quarkus框架开发微服务。将首先开发基于Quarkus和MicroProfile API的可部署应用;此后,将了解如何借助Quarkus天然的启动速度和运行速度优势,通过运用GraalVM原生编译,来获得性能跃升。在学习过程中,你将体验到如何在Quarkus应用中集成Spring开发,并吸收作者关于微服务监控和管理的真知灼见。

主编推荐
微服务开发并不容易。其中涉及大量的概念与复杂的技术,令很多开发者忘而却步。Quarkus是一个全能的基础框架,除了基础的Web应用开发能力外,还包括服务发现与调用、熔断限流和观测等微服务治理体系。Quarkus 在提供强大特性的同时,力求通过降低对实际业务开发的侵入性来减轻开发者的负担。从两个方面就可见一斑:①为让现有Spring框架的开发者更容易上手,Quarkus 在常见特性上提供与Spring框架的直接兼容;②如果要用Quarkus生成原生二进制可执行程序,只需要添加相应配置和编译参数即可,无论是开发过程、编程语言语法,还是业务代码,都不需要修改。我们发现,基于Quarkus开发云原生微服务变得轻松又愉悦。
国内的Java开发和微服务技术社区都相当活跃。近年来,Quarkus 逐步被更多团队应用到实际项目中,人们热切渴望Quarkus 方面的实战材料,供新人学习,供有经验者参考。本书是一本由红帽专家亲作的Quarkus实战型入门书籍。无论是从未使用过其他开发框架的人,还是已有其他框架使用经验的开发者,书中都提供了相应内容,让开发者迅速建立使用Quarkus开发微服务所需的知识体系。Quarkus 并非独立存在,而与微服务和容器技术相辅相成。读者若要更好地理解本书的内容,更顺利地完成书中的实验,有必要参考其他有关微服务的资料,并了解如何使用容器和Kubernetes之类的工具。

—  没有更多了  —

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

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