Quarkus in Action
作者: Martin Štefanko and Jan Martiška
语言: 英文
出版年份: 2025
下载链接:
书籍均收集自互联网,仅供学习和研究使用,请莫用于商业用途。谢谢合作。

书籍摘要

一、书籍定位

本书由 Red Hat 资深工程师 Martin Štefanko 与 Jan Martiška 合著,是一本面向 Java 开发者的 Quarkus 实战指南,旨在帮助读者快速掌握 Quarkus 的核心概念、开发技巧及云原生部署实践。全书围绕“Acme Car Rental”微服务系统展开,通过12章内容循序渐进地演示如何用 Quarkus 构建现代化、高性能、易维护的 Java 应用。

二、内容结构概览

部分 主题 关键章节与亮点
Part 1 起步 Quarkus 基础 • 第一章:Quarkus 设计哲学、Kubernetes 原生、GraalVM 原生镜像
• 第二章:15 分钟内创建首个 Quarkus 应用,体验 Dev Mode、热加载、容器镜像打包
Part 2 开发实战 微服务全栈开发 • 第四章:REST / GraphQL / gRPC 三种通信协议对比与实现
• 第五章:JUnit5 + Mockito + 原生模式测试体系
• 第六章:基于 Qute + HTMX 的安全 Web UI(Keycloak 单点登录)
• 第七章:Panache ORM 与 PostgreSQL、MongoDB 数据访问
• 第八章:Reactive 编程与 Mutiny
• 第九章:Kafka / RabbitMQ 消息驱动
Part 3 云原生与扩展 上云与二次开发 • 第十章:健康检查、指标、链路追踪、容错、服务发现
• 第十一章:Kubernetes/OpenShift 部署、Serverless Knative 示例
• 第十二章:自定义 Quarkus 扩展开发(配置、字节码生成、Dev UI 集成)

三、技术特色

  1. 开发者体验至上

    • Dev Mode:毫秒级热重载,编码即生效
    • Dev Services:一键启动 PostgreSQL、Kafka、Keycloak 等依赖
    • Continuous Testing:每次保存自动跑单测,边写边测
  2. 性能极致

    • 构建时处理:启动 < 50 ms,内存 < 50 MB(原生镜像)
    • GraalVM 原生镜像零配置,JVM/Native 自由切换
  3. 云原生 DNA

    • Kubernetes 原生:自动生成 Deployment、Service、ConfigMap
    • Serverless Ready:基于 Funqy 的 Knative 函数示例
  4. 丰富生态

    • 700+ 官方扩展:REST、GraphQL、gRPC、Reactive、Security、Observability
    • Quarkiverse 社区扩展:Blaze-Persistence、Camel 等随取随用

四、实践案例:Acme Car Rental

  • 业务场景:用户注册、车辆库存、预订、计费、员工管理
  • 架构:5 个独立微服务 + Keycloak + PostgreSQL + Kafka + RabbitMQ
  • 通信协议
    • Users ↔ Reservation:REST + OIDC Token 传播
    • Reservation ↔ Inventory:GraphQL 查询车辆
    • Reservation ↔ Billing:Kafka 异步事件
    • Inventory CLI:gRPC 流式批量导入车辆
  • 部署:本地 Dev Mode → Docker Compose → Kubernetes/OpenShift → Serverless

五、适读人群

  • 具备 Java 基础、希望快速构建云原生应用的开发者
  • Spring/Spring Boot 用户想迁移或对比新框架
  • 架构师评估高性能、低内存微服务方案

六、阅读收获

完成本书后,你将能够:

  1. 用 Quarkus CLI 或 code.quarkus.io 在 5 分钟内生成生产级项目骨架
  2. 熟练使用 Panache 与 Hibernate 完成 CRUD、事务、迁移
  3. 通过 Dev UI 可视化调试配置、CDI Bean、数据库
  4. 编写可在 JVM 与原生模式下运行的测试套件
  5. 将应用容器化并一键部署到 Kubernetes、OpenShift 或 Knative
  6. 为自研框架编写 Quarkus 扩展,贡献社区

七、一句话总结

《Quarkus in Action》不仅教你“用 Java 写微服务”,更展示了如何以“云原生思维”重塑 Java 开发体验——更快启动、更小内存、更强生产力。

期待您的支持
捐助本站