描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787121418037
Quarkus优点:
1.Quarkus是自带云原生基因的Java框架
2.Quarkus是2020年zui活跃的微服务框架平台
3.Quarkus启动快,占用内存少,其性能可与其他原生开发语言(如Go语言)相媲美
3.Quarkus的底层基于响应式非阻塞架构,可实现响应式和命令式混合编程
4.Quarkus提供了实时重载和零配置,可提高生产力,增加了编程乐趣
5.Quarkus的学习曲线平缓,对于Spring开发者来说,几乎可以无成本掌握这一技术
6.Quarkus兼容和整合了常用Java软件框架,拥有400多个扩展框架
本书特点:
1. 内容覆盖软件开发中80%以上的技术应用场景
2. 以图形、源码、文字说明相结合的方式进行讲解,大部分案例配有UML图例,可高效掌握每个案例的精髓
3. 主要以源码案例说明为主,全书包含50多个编程案例、1万多行代码
4. 每个案例讲解都包含技术背景、原理、相关规范解析、验证过程和辅助验证工具等内容, 方便读者不费力地上手实践
Quarkus是一个来自Red Hat公司的超音速亚原子Kurbernetes原生Java框架。该框架允许Java开发人员结合容器、微服务和Kurbernetes的能力来构建可靠的、高性能的、快速的云原生应用和Serverless应用。
本书是一本Quarkus开发指南,涵盖了使用Quarkus所需的大部分知识,书中的所有主题都配有典型案例,全书一共包含50多个案例。全书共12章,第1章是Quarkus概述,可以从整体上认识Quarkus;第2章是对Quarkus的初探,将使用Quarkus构建一个微服务并开发一些基础应用;第3章至第10章是本书的主要部分,将详细讲解如何在Quarkus架构上进行Web、Data、Message、Security、Reactive、Tolerance、Health、Tracing、Spring集成等应用场景的开发和实现;第11章将介绍Quarkus在云原生应用场景下的实施和部署;第12章将引出一个更高级的话题——Quarkus Extension,帮助高级开发者在Quarkus的基础上扩展外部组件。
本书适合对Quarkus感兴趣且想在这方面获得更多知识或者实现更多想法的IT从业者,尤其适合那些在Spring框架上已经有所积累的工程师。
目录
第1章 Quarkus概述 1
1.1 Quarkus的概念和特征 1
1.2 Quarkus的整体优势 3
1.3 Quarkus的适用场景、目标用户和竞争对手 5
1.4 为什么Java开发者会选择Quarkus 7
1.5 Quarkus的架构和核心概念 8
1.6 本章小结 11
第2章 Quarkus开发初探 12
2.1 开发hello world微服务全过程 12
2.1.1 3种开发方式 12
2.1.2 编写程序内容及说明 15
2.1.3 测试hello world微服务 17
2.1.4 运行程序及打包 19
2.2 Quarkus开发基础 21
2.2.1 Quarkus的CDI应用 21
2.2.2 Quarkus命令模式 30
2.2.3 Quarkus应用程序生命周期 34
2.2.4 Quarkus配置文件 36
2.2.5 Quarkus日志配置 40
2.2.6 缓存系统数据 43
2.2.7 基础开发案例 46
2.3 GoF设计模式的Quarkus实现 47
2.3.1 GoF设计模式简介 47
2.3.2 GoF设计模式案例的Quarkus源码结构及演示 47
2.3.3 案例场景、说明和Quarkus源码实现 51
2.4 应用案例说明 73
2.4.1 应用案例场景说明 73
2.4.2 应用案例简要介绍 75
2.4.3 与应用案例相关的软件和须遵循的规范 78
2.4.4 应用案例的演示和调用 84
2.4.5 应用案例的解析说明 86
2.5 本章小结 88
第3章 开发REST/Web应用 90
3.1 编写REST JSON服务 90
3.1.1 案例简介 90
3.1.2 编写程序代码 92
3.1.3 验证程序 98
3.1.4 Quarkus的Web实现原理讲解 99
3.2 增加OpenAPI和SwaggerUI功能 100
3.2.1 案例简介 101
3.2.2 编写程序代码 102
3.2.3 验证程序 103
3.3 编写GraphQL应用 107
3.3.1 案例简介 107
3.3.2 编写程序代码 107
3.3.3 验证程序 113
3.4 编写WebSocket应用 121
3.4.1 案例简介 121
3.4.2 编写程序代码 122
3.4.3 验证程序 127
3.5 本章小结 128
第4章 数据持久化开发 130
4.1 使用Hibernate ORM和JPA实现数据持久化 130
4.1.1 前期准备 130
4.1.2 案例简介 132
4.1.3 编写程序代码 133
4.1.4 验证程序 141
4.1.5 其他数据库配置的实现 142
4.1.6 关于其他ORM实现 146
4.2 使用Java事务 146
4.2.1 Quarkus事务管理 146
4.2.2 案例简介 149
4.2.3 编写程序代码 150
4.2.4 验证程序 155
4.2.5 JTA事务的多种实现 156
4.3 使用Redis Client实现缓存处理 161
4.3.1 前期准备 161
4.3.2 案例简介 162
4.3.3 编写程序代码 162
4.3.4 验证程序 166
4.4 使用MongoDB Client实现NoSQL处理 168
4.4.1 前期准备 168
4.4.2 案例简介 169
4.4.3 编写程序代码 170
4.4.4 验证程序 175
4.5 使用Panache实现数据持久化 177
4.5.1 前期准备 177
4.5.2 案例简介 177
4.5.3 编写程序代码 177
4.5.4 验证程序 183
4.6 本章小结 185
第5章 整合消息流和消息中间件 186
5.1 调用Apache Kafka消息流 186
5.1.1 前期准备 186
5.1.2 案例简介 188
5.1.3 编写程序代码 190
5.1.4 验证程序 198
5.2 创建JMS应用实现队列模式 200
5.2.1 前期准备 200
5.2.2 案例简介 203
5.2.3 编写程序代码 205
5.2.4 验证程序 211
5.3 创建JMS应用实现主题模式 213
5.3.1 前期准备 213
5.3.2 案例简介 213
5.3.3 编写程序代码 214
5.3.4 验证程序 220
5.4 创建MQTT应用 221
5.4.1 前期准备 221
5.4.2 案例简介 222
5.4.3 编写程序代码 223
5.4.4 验证程序 228
5.5 本章小结 229
第6章 构建安全的Quarkus微服务 231
6.1 微服务Security概述 231
6.2 Quarkus Security架构 232
6.2.1 Quarkus Security架构概述 232
6.2.2 Quarkus Security支持的身份认证 233
6.2.3 API令牌方案概述 234
6.3 基于文件存储用户信息的安全认证 235
6.3.1 案例简介 235
6.3.2 编写程序代码 236
6.3.3 验证程序 240
6.4 基于数据库存储用户信息并用JDBC获取的安全认证 241
6.4.1 案例简介 241
6.4.2 编写程序代码 242
6.4.3 验证程序 244
6.5 基于数据库存储用户信息并用JPA获取的安全认证 246
6.5.1 案例简介 246
6.5.2 编写程序代码 247
6.5.3 验证程序 253
6.6 基于Keycloak实现认证和授权 255
6.6.1 前期准备 255
6.6.2 案例简介 258
6.6.3 编写程序代码 266
6.6.4 验证程序 270
6.7 使用OpenID Connect实现安全的JAX-RS服务 274
6.7.1 案例简介 274
6.7.2 编写程序代码 276
6.7.3 验证程序 280
6.8 使用OpenID Connect实现安全的Web应用 283
6.8.1 案例简介 283
6.8.2 编写程序代码 284
6.8.3 验证程序 287
6.9 使用JWT加密令牌 289
6.9.1 案例简介 289
6.9.2 编写程序代码 290
6.9.3 验证程序 295
6.10 使用OAuth 2.0实现认证 298
6.10.1 前期准备 298
6.10.2 案例简介 298
6.10.3 编写程序代码 299
6.10.4 验证程序 303
6.11 本章小结 309
第7章 构建响应式系统应用 310
7.1 响应式系统简介 310
7.2 Quarkus响应式应用简介 317
7.2.1 Quarkus的响应式总体架构 317
7.2.2 Quarkus中整合的响应式框架和规范 317
7.2.3 使用Quarkus实现响应式API 320
7.3 创建响应式JAX-RS应用 325
7.3.1 案例简介 325
7.3.2 编写程序代码 326
7.3.3 验证程序 332
7.4 创建响应式SQL Client应用 334
7.4.1 前期准备 334
7.4.2 案例简介 335
7.4.3 编写程序代码 335
7.4.4 验证程序 340
7.5 创建响应式Hibernate应用 342
7.5.1 前期准备 342
7.5.2 案例简介 342
7.5.3 编写程序代码 343
7.5.4 验证程序 348
7.6 创建响应式Redis应用 350
7.6.1 前期准备 350
7.6.2 案例简介 350
7.6.3 编写程序代码 350
7.6.4 验证程序 356
7.7 创建响应式MongoDB应用 357
7.7.1 前期准备 357
7.7.2 案例简介 357
7.7.3 编写程序代码 357
7.7.4 验证程序 363
7.8 创建响应式Apache Kafka应用 364
7.8.1 前期准备 364
7.8.2 案例简介 364
7.8.3 编写程序代码 368
7.8.4 验证程序 373
7.9 创建响应式AMQP应用 374
7.9.1 前期准备 374
7.9.2 案例简介 374
7.9.3 编写程序代码 375
7.9.4 验证程序 380
7.10 Quarkus响应式基础框架Vert.x的应用 382
7.10.1 案例简介 383
7.10.2 编写程序代码 384
7.10.3 Vert.x API应用讲解和验证 385
7.10.4 WebClient应用讲解和验证 389
7.10.5 routes应用讲解和验证 391
7.10.6 EventBus应用讲解和验证 394
7.10.7 stream应用讲解和验证 396
7.10.8 pgclient应用讲解和验证 397
7.10.9 delay应用讲解和验证 402
7.10.10 JSON应用讲解和验证 404
7.11 本章小结 405
第8章 Quarkus微服务容错机制 406
8.1 微服务容错简介 406
8.2 Quarkus容错的实现 407
8.2.1 案例简介 407
8.2.2 编写程序代码 408
8.2.3 Quarkus重试的实现和验证 409
8.2.4 Quarkus超时和回退的实现和验证 412
8.2.5 Quarkus熔断器的实现和验证 415
8.2.6 Quarkus舱壁隔离的实现 418
8.3 本章小结 418
第9章 Quarkus监控和日志 419
9.1 Quarkus的健康监控 419
9.1.1 案例简介 419
9.1.2 编写程序代码 420
9.1.3 验证程序 424
9.2 Quarkus的监控度量 427
9.2.1 案例简介 427
9.2.2 编写程序代码 427
9.2.3 验证程序 429
9.3 Quarkus的调用链日志 432
9.3.1 案例简介 432
9.3.2 编写程序代码 434
9.3.3 验证程序 437
9.4 本章小结 438
第10章 集成Spring到Quarkus中 439
10.1 整合Spring的DI功能 439
10.1.1 案例简介 439
10.1.2 编写程序代码 439
10.1.3 验证程序 445
10.2 整合Spring的Web功能 447
10.2.1 案例简介 447
10.2.2 编写程序代码 448
10.2.3 验证程序 452
10.3 整合Spring的Data功能 453
10.3.1 案例简介 453
10.3.2 编写程序代码 454
10.3.3 验证程序 460
10.4 整合Spring的安全功能 461
10.4.1 案例简介 461
10.4.2 编写程序代码 462
10.4.3 验证程序 465
10.5 获取Spring Boot的配置文件属性功能 466
10.5.1 案例简介 466
10.5.2 编写程序代码 467
10.5.3 验证程序 470
10.6 获取Spring Cloud的Config Server配置文件属性功能 471
10.6.1 案例简介 471
10.6.2 编写程序代码 472
10.6.3 验证程序 474
10.7 本章小结 475
第11章 Quarkus的云原生应用和部署 476
11.1 构建容器镜像 476
11.1.1 Quarkus构建容器镜像概述 476
11.1.2 案例简介 479
11.1.3 编写程序代码 480
11.1.4 创建Docker容器镜像并运行容器程序 481
11.2 生成Kubernetes资源文件 482
11.2.1 Quarkus在Kubernetes上部署云原生应用 482
11.2.2 案例简介 483
11.2.3 编写程序代码 486
11.2.4 创建Kubernetes部署文件并将其部署到Kubernetes中 489
11.3 生成OpenShift资源文件 492
11.3.1 Quarkus在OpenShift中部署云原生应用 492
11.3.2 案例简介 492
11.3.3 编写程序代码 493
11.3.4 创建OpenShift部署文件并将其部署到OpenShift中 494
11.4 生成Knative资源文件 499
11.4.1 Quarkus生成Knative部署文件 499
11.4.2 案例简介 499
11.4.3 编写程序代码 501
11.4.4 创建Knative部署文件并将其部署到Kubernetes中 502
11.5 本章小结 504
第12章 高级应用——Quarkus Extension 505
12.1 Quarkus Extension概述 505
12.1.1 Quarkus Extension的哲学 505
12.1.2 Quarkus Extension基本概念 506
12.1.3 Quarkus Extension的组成 507
12.1.4 启动Quarkus应用程序 507
12.2 创建一个Quarkus扩展应用 508
12.2.1 案例简介 508
12.2.2 编写程序代码 508
12.2.3 验证程序 516
12.3 一些关于Quarkus Extension的说明 517
12.4 本章小结 517
后记 519
参考文献 521
推荐序一
Java,作为经久不衰的程序设计语言,以其面向对象、跨平台、分布式、高性能、组件化、动态特性等诸多特点,在企业计算、个人计算、移动计算等领域,一直备受开发者青睐。以Java语言为蓝本,在软件工程方法、设计模式等领域的迭代与发展,更是层出不穷。Java语言,在近三十年的发展历程中,形成了诸多被工业界广泛接受的标准和框架,为开发大型应用提供了便利,屏蔽了计算机底层技术的复杂性,使开发者可以更专注于业务逻辑,可以快速、高效地开发应用,以及稳定、可靠地运行应用。因此,在软件行业中,多年来也培养出、成长起一大批具有Java开发背景的软件工程师、架构师、管理者。这些从业者形成了强大的Java开发者社区,推动着Java语言不断向前发展。
历史的车轮不断向前,从传统的企业计算,到云计算,再到雾计算,计算无处不在。应用架构从传统的单体应用、三层架构走向分布式、微服务、无服务器架构,架构不断演变,从“大而全”转向“小而多”,便于应用的快速开发、迭代、集成、上线。因此,对于程序设计语言及其开发框架来说,也提出了适应时代发展的新要求,比如为了使应用可以更快地启动、运行时占用更少的内存以便大量的应用可以同时运行,语言及其框架需要做出一些改变,等等。传统的Java框架在这种新需求下显得有些“厚重”了,如何让其“瘦身”,成为Java社区的热点。
Quarkus正是在这样的背景下应运而生的,我们可以称它为云原生时代的Java框架,或者“超音速亚原子Java框架”,这恰恰说明了Quarkus的两个重要的特点,一个是“快”,一个是“小”。具体的Quarkus是什么?它有哪些优点?它是如何应用的?相信你一定很好奇,带着疑问阅读本书吧,你必将收获良多。
本书作者以大量的亲身实践,带读者掌握Quarkus技术、走进云原生应用开发的世界。愿我们一起拥抱云原生、拥抱未来!
张家驹
红帽中国首席架构师
推荐序二
在当今这个追求效率和便捷性的互联网时代,阅读这样一本用心撰写的IT图书,让我获益匪浅。作者图、文、码并茂地介绍了Quarkus开发相关知识,可以让读者在追求企业微服务体系规划实施的道路上实现快速学习、弯道超车。
在本书中,详细说明了在微服务应用开发和架构设计中Quarkus是如何结合Redis、MongoDB、Kafka、Message Queue和Vert.x等相关框架,让读者在学习Quarkus知识的同时,具备让Quarkus实际落地实施的能力。我在读完本书后,对作者在微服务体系架构设计、规划实施及管理整合上展现出的能力,感到钦佩不已。
后,本书让我印象深刻的是,作者在介绍Quarkus时所体现出的整体结构规划和深入浅出的表达,这些都让我这个IT老兵能迅速把握书中要点。期待作者持续创作,不断写出在IT界有影响力的图书。
陈明仪(Simon Chen)
亚马逊云科技专业顾问服务团队经理
前言
读者对象
本书适合对Quarkus感兴趣且想在这方面获得更多知识或者实现更多想法的IT从业者。
初级读者,可以通过本书知道如何使用Quarkus进行Web、Data和Message方面的开发,能非常迅速、高效、简单地搭建一个微服务应用系统。
中级读者,如有着丰富开发经验的软件开发工程师等,可以通过本书获得全面的对Quarkus的认识,能构建安全的、集成的、伸缩性和容错能力强的云原生应用。
高级读者,如有着丰富经验的架构师和分析师,可以通过本书知道Quarkus的核心特性,能利用这些特性游刃有余地构建响应式的、高可靠的、高可用的、维护性强的云原生架构体系。
本书尤其适合在Spring上已经有经验积累的工程师,他们几乎可以零成本地又掌握一套基于Java语言的云原生开发工具。从笔者的角度来看,Quarkus非常容易上手,读者如果有一些工作经验,曾经用类似的工具(如Spring等)进行过软件开发,那么将能非常快速地掌握Quarkus的使用方法。
本书定位
本书是一本Quarkus开发指南,简单地说,就是告诉读者如何快速、高效和精准地进行Quarkus开发。本书中实践内容占九成,而理论知识提及较少,因此本书是一本实践性和可操作性强的图书。本书既可以作为学习Quarkus的教程,也可以作为架构师的参考手册,以备不时之需。
本书以案例为基础,包含了案例程序的源码、讲解和验证。针对各个案例,笔者并没有简单地贴源码,而是以源码、图示和文字说明相结合的方式进行了详细解析,帮助读者理解案例总体思路和设计意图。
Quarkus官网上有非常多案例,让人眼花缭乱,那么笔者为什么会选择书中的这些案例进行讲解呢?这是因为笔者根据自己的实际工作经验进行了筛选。如果要开发一个云原生微服务应用,那么需要网络支持、数据支持(包括关系型数据库、缓存数据库、NoSQL数据库等)和安全框架,实现这些基本上就能够完成一个云原生微服务系统的大部分功能。如果涉及异步处理或事件处理,还可以加上一个消息组件或流组件。更进一步地,如果还有更高级的用法,那就接着添加容错、监控、非阻塞等组件。上述这些知识基本上都被笔者精选的案例所囊括。可以说,笔者选择的案例已经可以覆盖80%~90%的云原生微服务应用开发相关内容。
本书中反复提及Java的规范和标准。在IT世界中,各种开源平台和产品层出不穷,而且进行着快速迭代。学习每个平台和产品都需要时间成本和投入精力,但是很多时候往往是,开发者非常辛苦地学习了一套平台的用法,没想到稍过一段时间,就发现所学技术或技能已经落后。而在Java领域中,学习相关规范和标准能让学习成本变低,让我们更快、更容易地学习技术和技能。
如何使用本书
本书中的每个案例都是一个故事,讲故事有很多种方法,就好似不同的导演拍同一个电影题材所展现给观众的故事都不一样。笔者讲故事的总体思路是这样的:首先概述这个故事的目的、组成、环境(上下文);然后重点分析这个故事的要点及实现,还会提供一两张图来描述整个故事的发展过程;后笔者会给出验证环节的实现。这样读者花非常少的时间和精力就可以进行具体的实践。
本书还是一本软件编程书。编程是一项实践性强的活动,讲100句道理也不如写上10行代码。本书中的每个案例都有验证环节,也就是让读者亲手实践,而且针对这些环节,笔者还准备了相关代码,读者可以看到结果是否与设想一致。读者也许很容易就能看明白书中的文字和图示部分,可是具体实操时,却发现好像不是那么回事,笔者也曾经历过这样的事。因此,要不断地分析、排错,在踩过无数个“坑”后,终实现自己想要的效果。笔者笃信:纸上得来终觉浅,绝知此事要躬行。这也是编程的真谛。
在开始具体的案例之旅前,笔者强烈建议读者阅读第2章的“2.4 应用案例说明”一节,其中包含了各个具体案例的总体说明,是关于所有案例的应用场景、原则和规则的通用说明。读者若能明白这些内容,就能更轻松、方便、高效地理解各个案例的核心含义,从而达到事半功倍的效果。
本书结构
本书总共12章,首先是Quarkus概述,可以让读者从整体上认识Quarkus;其次是对Quarkus的初探;再次是本书的主要部分,将详细讲解如何在Quarkus中进行Web、Data、Message、Security、Reactive、Tolerance、Health、Tracing、Spring集成等应用场景的开发和实现;接着将介绍Quarkus在云原生应用场景下的实施和部署;后引出一个更高级的话题——Quarkus Extension。各章简介如下。
第1章 Quarkus概述
首先将介绍Quarkus的概念和特征;其次将简单介绍Quarkus的整体优势;再次将阐述Quarkus的适用场景、目标用户和竞争对手;接着将探讨为什么Java开发者会选择Quarkus;后将介绍Quarkus的架构和核心概念。
第2章 Quarkus开发初探
首先将给出开发hello world微服务全过程;其次将介绍Quarkus开发基础,主要使用6个基础开发案例来进行讲解;再次将介绍用Quarkus实现GoF设计模式的案例;后是对应用案例的整体说明,可以认为这部分内容是整本书实战案例的导读。
第3章 开发REST/Web应用
将分别介绍如何在Quarkus中开发REST JSON服务、增加OpenAPI和SwaggerUI功能、编写GraphQL应用、编写WebSocket应用,包含案例的源码、讲解和验证。
第4章 数据持久化开发
将分别介绍如何在Quarkus中使用Hibernate ORM和JPA实现数据持久化、使用Java事务、使用Redis Client实现缓存处理、使用MongoDB Client实现NoSQL处理、使用Panache实现数据持久化等,包含案例的源码、讲解和验证。
第5章 整合消息流和消息中间件
将分别介绍如何在Quarkus中调用Apache Kafka消息流、创建JMS应用实现队列模式、创建JMS应用实现主题模式和创建MQTT应用等,包含案例的源码、讲解和验证。
第6章 构建安全的Quarkus微服务
首先将对微服务Security进行概述并介绍Quarkus的Security架构;其次将分别介绍如何在Quarkus中实现基于文件存储用户信息的安全认证、基于数据库存储用户信息并采用JDBC获取的安全认证、基于数据库存储用户信息并用JPA获取的安全认证、基于Keycloak实现认证和授权、使用OpenID Connect实现安全的JAX-RS服务、使用OpenID Connect实现安全的Web应用、使用JWT加密令牌、使用OAuth 2.0实现认证等,包含案例的源码、讲解和验证。
第7章 构建响应式系统应用
首先将简介响应式系统;其次将简介Quarkus响应式应用;再次将分别介绍如何在Quarkus中创建响应式JAX-RS应用、响应式SQL Client应用、响应式Hibernate应用、响应式Redis应用、响应式MongoDB应用、响应式Apache Kafka应用、响应式AMQP应用等,包含案例的源码、讲解和验证;后将介绍Quarkus响应式基础框架Vert.x的应用,包含案例的源码、讲解和验证。
第8章 Quarkus微服务容错机制
首先将简介微服务容错;然后将介绍如何在Quarkus中开发包括重试、超时、回退、熔断器和舱壁隔离等微服务容错的应用,包含案例的源码、讲解和验证。
第9章 Quarkus监控和日志
首先将介绍Quarkus中的健康监控,其次将介绍Quarkus中的监控度量,后将介绍Quarkus中的调用链日志。这些应用都包含案例的源码、讲解和验证。
第10章 集成Spring到Quarkus中
将分别介绍如何在Quarkus中整合Spring的DI功能、Web功能、Data功能、安全功能,以及获取Spring Boot的配置文件属性功能、获取Spring Cloud的Config Server配置文件属性功能,包含案例的源码、讲解和验证。
第11章 Quarkus的云原生应用和部署
将分别介绍如何在Quarkus中构建容器镜像、生成Kubernetes资源文件、生成OpenShift资源文件、生成Knative资源文件等,包含案例的源码、讲解和验证。
第12章 高级应用——Quarkus Extension
首先将概述Quarkus Extension;然后将介绍如何创建一个Quarkus扩展应用,包含案例的源码、讲解和验证;后是一些关于Quarkus Extension的说明。
参考文献
将列出本书参考文献,以及本书中会涉及的基于Quarkus应用的软件或平台,如果读者需要了解更多细节,可以查阅相关文献和资料。
后记
Quarkus还处于不断发展的过程中,本部分将告诉读者如何使本书中的案例与Quarkus版本保持同步更新。
勘误和支持
由于笔者水平有限,而且本书中所描述的产品也在快速发展过程中,因此书中的纰漏和错误在所难免,希望读者能给予批评和指正。
笔者的联系方式为[email protected]。
Quarkus为容器而生,优化Java,这让其成为无服务器、云和Kubernetes环境的高效平台。一经推出,Quarkus便受到了全球开发者的关注,在应用开发领域引起了轰动。作者有二十余年软件架构和开发经验,精通微服务架构、云原生体系等。这一次,他用通俗易懂的语言(和代码)、生动活泼的应用案例,撰写了一本适用于各类开发人员的Quarkus开发实操指导手册。作为Quarkus中文原创图书,希望本书能让国内开发人员快速掌握Quarkus的使用方法,提高生产力,为企业构建灵活、可靠的云原生架构体系。同时,也鼓励国内开发人员熟悉开源开发原则,积极贡献Quarkus上游社区,进一步发挥国际影响力。
——曹衡康 红帽全球副总裁兼大中华区总裁
本书作者以大量的亲身实践,带读者掌握Quarkus技术、走进云原生应用开发的世界。愿我们一起拥抱云原生、拥抱未来!
——张家驹 红帽中国首席架构师
Quarkus被称为“超音速亚原子Java框架”。Quarkus优化了Java,使其更具模块化,降低了框架本身的依赖性。本书是一本全面介绍Quarkus技术的好书,书中包含大量项目实践经验总结,值得关注云原生的朋友阅读。
——魏新宇 红帽副首席架构师,《OpenShift在企业中的实践》《云原生应用构建》作者
在当今这个追求效率和便捷性的互联网时代,阅读这样一本用心撰写的IT图书,让我获益匪浅。作者图、文、码并茂地介绍了Quarkus开发相关知识,可以让读者在追求企业微服务体系规划实施的道路上实现快速学习、弯道超车。
——陈明仪 亚马逊云科技专业顾问服务团队经理
Quarkus是红帽公司主导发布的新一代云原生Java框架,用于构建满足容器运行要求、符合微服务十二要素等云原生特性的应用。本书作为国人编写的Quarkus中文原创图书,作者结合自身的实践经验,从基本概念出发,到初探Quarkus,再到大量实际应用场景的开发和实现,系统地将Quarkus的魅力呈现给读者,是一本值得读者阅读的精品图书。
——郭跃军 VMware解决方案工程师,《OpenShift在企业中的实践》作者
评论
还没有评论。