内容简介
Quarkus 建立在我们已熟知的基础技术之上。它使用 JPA、JAX-RS、Eclipse Vert.x、Eclipse MicroProfile 和 CDI 等一些熟悉的技术,将这些知识结合到一个紧凑的、易于部署的、针对 OpenK Hotspot 或 GraalVM 的 Kuberes 优化的容器中。你可以利用 Kuberes 集群,在应用程序需要扩展时,地利用机器上的资源。
目录
序言1前言3第1章 Quarkus概述71.1 友好71.2 与Kuberes集成81.3 内存和响应时间81.4 Quarkus基本工作流程9第2章 搭建脚手架102.1用Maven搭建Quarkus项目的脚手架102.2用Gradle搭建Quarkus项目的脚手架122.3 用Quarkus Start Coding网站搭建Quarkus项目的脚手架132.4 用Visual Studio Code搭建Quarkus项目的脚手架152.5 使用开发模式实时重载192.6 提供静态资源20第3章 开发RESTful服务223.1 创建一个简单的REST API端点223.2 提取请求参数243.3 使用响应状态码253.4 绑定方法283.5 启用跨源资源共享293.6 使用响应式路由303.7拦截请求333.8 使用SS行连接35第4章 配置374.1使用自定义属配置应用程序374.2 以程序化的方式访问配置属414.3 在外部覆盖配置值414.4 使用profil行配置434.5 修改日志配置444.6 添加应用程序日志454.7 日志配置464.8 使用自定义profil行配置494.9 创建自定义配置源514.10 创建自定义转换器534.11 配置值的分组554.12 验证配置值57第5章 编程模型595.1 对JSO行编组和解组595.2 对XM行编组和解组625.3 校验输入值和输出值655.4 创建自定义校验695.5 以程序化的方式校验对象715.6依赖注入735.7 创建工厂类755.8 执行对象生命周期事件775.9 执行应用程序生命周期事件785.10 使用命名限定符795.11 使用自定义限定符815.12 限定和配置注解825.13 创建拦截器835.14 行为测试855.15 单元测试895.16 创建mock对象915.17使用Mockito创建mock对象925.18用元注解将多个注解组合为一个注解945.19 在测试代码前后执行代码955.20测试本地可执行文件101第6章 Quarkus应用程序1046.1 在命令行模式下运行1046.2创建一个可运行的JAR文件1066.3 über-JAR1086.4 构建原生可执行文件1086.5 为JAR文件构建一个Docker容器1106.6 为原生可执行文件构建一个Docker容器1116.7 构建和容器化原生SSL应用程序112第7章 持久化1157.1配置数据源1157.2 使用多个数据源1167.3 添加数据源的健康检查1177.4 定义事务的边界1187.5 设置事务的上下文1197.6 程序化事务控制1207.7 设置和修改事务超时时间1217.8 使用persistence.xml1227.9 不使用persistence.xml1227.10 使用不同JAR文件的实体1237.11 用Panache持久化数据1237.12 用Panache listAll方法查找所有实体条目1257.13 用Panache findById方法查找单个实体1257.14 用Panache find和list方法查找实体1267.15 用Panache count方法获取实体计数1277.16 用Panache page方法对实体列行分页1277.17 用Panache stream方法对结行流处理1287.18 测试Panache实体1287.19 使用数据访问对象和repository模式1297.20 使用Amazon DynamoDB1307.21 使用MongoDB1357.22 用Panache连接MongoDB1397.23 使用Neo4j1407.24 使用Flyway1447.25 以程序化的方式使用Flyway145第8章 容错1468.1 自动重试1468.2 超时1488.3 使用舱壁模行过载保护1498.4 使用断路器模式避免故障传递1518.5 禁用容能153第9章 可观察1559.1 使用自动化健康检查1559.2 创建自定义健康检查1579.3 暴露指标1609.4 创建指标1629.5 使用分布式跟踪1679.6 自定义分布式跟踪173第10章 与Kuberes集成17610.1 构建和推送容器镜像17610.2 生成Kuberes资源17910.3 生成带有健康检查的Kuberes资源18210.4 在Kuberes上部署服务18410.5 在OpenShift上部署服务18510.6 自动构建和部署容器镜像18910.7 通过Kuberes配置应用程序19010.8 使用配置扩展通过Kuberes配置应用程序19210.9 以程序化的方式与Kuberes集行交互19310.10 测试Kuberes Client交互19710.11 实现一个Kuberes Operator19810.12 用Knative部署和管理无服务器工作负载211第11章 认证与授权21511.1 使用Elytron属文件配行认证和授权21911.2 使用Elytron Security BC配行认证和授权22211.3 使用MicroProfile JW行授权22611.4 使用OpenId Connec行授权和认证23211.5 使用OpenId Connect保护网络资源236第12章 应用程序密钥管理23712.1 使用Kuberes中的secret存储数据23712.2使用Vault地存储配置的secret24012.3 密码即服务24312.4 生成数据库密码并存入secret24612.5 使用Vault Kuberes Aut行认证服务250第13章 Quarkus RE


