1.6. 技术预览
本节列出了红帽构建的 Quarkus 3.15 中现在作为技术预览提供的特性和扩展。
红帽产品服务等级协议(SLA)不支持技术预览功能,且功能可能并不完善,红帽建议您不要在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的更多信息,请参阅技术预览功能支持范围。
1.6.1. Cert-manager 支持并定期重新载入 TLS 证书 复制链接链接已复制到粘贴板!
使用红帽构建的 Quarkus 3.15,您可以使用 cert-manager 配置从 TLS registry 或 Kubernetes 中运行时自动定期重新载入 TLS 证书。这个功能作为技术预览引进。
自动定期重新载入 TLS 证书
TLS 注册表包含一个内置机制,用于定期检查文件系统是否有证书更改并重新加载它们。您可以使用
reload-period属性来配置重新加载间隔,该属性定义重新加载证书的频率。您可以为 HTTP 服务器重新载入 TLS 证书文件(keystore 和 truststore)。证书文件从最初加载的同一位置重新加载,并且仅包含上次重新加载后修改的证书。如果重新加载失败,HTTP 服务器将继续使用之前加载的证书。
当使用兼容扩展时,TLS registry 会自动添加到 Red Hat build of Quarkus 项目中。例如,如果应用程序使用 Quarkus REST、gRPC 或 Reactive 路由,则 TLS registry 会自动添加到项目中。
使用
cert-manager运行 Kubernetes 时,您可以使用
cert-manager功能自动生成、续订和存储证书。cert-manager使用密钥存储和信任存储生成 secret。配置 TLS registry 与使用 Kubernetes secret 时相同。
如需更多信息,请参阅 Quarkus TLS registry 参考指南。
1.6.2. generate reflection-free Jackson serializers 复制链接链接已复制到粘贴板!
通过红帽构建的 Quarkus 3.15,您可以为通过 Quarkus REST 序列化的类型生成更快反映-free Jackson serializers。这个功能作为技术预览引进。
Jackson 序列化将对象转换为其 JSON 表示,方法是通过反映来反映它们。在这个版本中,您可以在构建时自动生成 Jackson StdSerializer 的实现,每个类都以 JSON 转换。然后,红帽构建的 Quarkus 使用在运行时生成的 serializers 来执行由 REST 端点返回的对象的 JSON 序列化。
默认情况下不启用此功能。要启用它,请将以下配置属性设置为 true。
quarkus.rest.jackson.optimization.enable-reflection-free-serializers=true.
如需更多信息,请参阅 Quarkus "Writing REST services with Quarkus REST" 指南中的 Reflection-free Jackson serialization 部分。
1.6.3. 引入了 Infinispan 缓存扩展 复制链接链接已复制到粘贴板!
红帽构建的 Quarkus 3.15 引入了新的扩展 quarkus-infinispan-cache。
在以前的版本中,红帽构建的 Quarkus 使用 Caffeine 作为 Quarkus 缓存的后端。在这个版本中,您可以使用 Infinispan 作为缓存后端。
与在进程中运行的 Caffeine 不同,Infinispan 在外部运行 Quarkus,确保缓存生命周期独立于应用程序生命周期。此外,Infinispan 是一种分布式系统,因此一个节点故障不会影响其他节点的操作。
- 在 Red Hat build of Quarkus 3.15 中,Infinispan 组件已升级到 15.0 版本。
如需更多信息,请参阅 Quarkus Infinispan 缓存 指南。
1.6.4. 引入了 JDK Flight Recorder 扩展 复制链接链接已复制到粘贴板!
红帽构建的 Quarkus 3.15 引入了 JDK Flight Recorder (JFR)扩展 quarkus-jfr 作为技术预览。
JFR 是用于监控和诊断 Java 应用程序性能的内置 JVM 工具。它捕获 CPU 用量、内存和线程活动等事件数据。要识别瓶颈并优化性能,请将 JFR 添加到您的应用,配置事件以记录和分析数据。
quarkus-jfr 扩展与以下扩展兼容:
-
quarkus-rest -
quarkus-opentelemetry
如需更多信息,请参阅使用 Java Flight Recorder 的 Quarkus 指南。
1.6.5. OpenTelemetry 指标数据创建和报告 复制链接链接已复制到粘贴板!
您可以使用 OpenTelemetry (OTel)为交互式 Web 应用程序提供指标。使用红帽构建的 Quarkus 3.15,您可以使用 quarkus-opentelemetry 扩展创建并导出 OTel 指标数据。
这个功能是作为技术预览引进的,默认是禁用的。
要启用 OTel 指标,请在构建时指定以下设置: quarkus.otel.metrics.enabled=true
如需更多信息,请参阅使用 OpenTelemetry 指标 的 Quarkus 指南。
1.6.6. MongoDB tracing 增强 复制链接链接已复制到粘贴板!
红帽构建的 Quarkus 3.15 通过与 quarkus-opentelemetry 扩展集成来增强 MongoDB tracing。
此功能增强作为技术预览引进,并默认禁用。
要将追踪与 MongoDB 一起使用,请将 quarkus-opentelemetry 扩展添加到项目中,并指定以下设置:
quarkus.mongodb.tracing.enabled=true
如需更多信息,请参阅使用 MongoDB 客户端的 Quarkus。