1.6. 技术预览


本节列出了在红帽构建的 Quarkus 3.2 中作为技术预览提供的功能和扩展。

重要

技术预览功能不被红帽产品服务级别协议(SLA)支持,且其功能可能并不完善,红帽建议您不要在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。

有关红帽技术预览功能的更多信息,请参阅 技术预览功能范围

1.6.1. 增强的组件测试

Red Hat build of Quarkus 3.2 引进了名为 QuarkusComponentTestExtension 的 JUnit 扩展作为技术预览功能。

这个新扩展旨在帮助简化 CDI 组件的测试以及其依赖项的模拟,并包括在 quarkus-junit5-component 依赖项中。

如需更多信息,请参阅 Red Hat build of Quarkus "Testing your application" 指南中的 Testing components 部分。

1.6.2. Hibernate Reactive 升级到版本 2

在这个版本中,Red Hat build of Quarkus 依赖于 Hibernate Reactive 2 扩展而不是 Hibernate Reactive 1。这个变化意味着行为和数据库模式期望有一些变化,它们与早期版本不兼容。大多数更改都与 Hibernate Reactive 2 相关,具体取决于 Hibernate ORM 6.2 而不是 Hibernate ORM 5.6。

quarkus-opentelemetry-exporter-otlp 扩展是 quarkus-opentelemetry 扩展的一部分。此统一扩展提供 OpenTelemetry 协议(OTLP)导出器功能,而无需额外的设置,从而简化 OTLP 导出器使用情况。

1.6.4. 支持在数据库中存储事务日志

使用红帽构建的 Quarkus 3.2,对于持久性存储不可用的云环境,比如当应用程序容器无法使用持久性卷时,您可以使用 Java 数据库连接(JDBC)数据源配置事务管理,将事务日志存储在数据库中。

重要

此配置仅与 Jakarta 事务 相关。

虽然使用数据库存储事务日志有几个优点,但您可能会注意到与使用文件系统存储日志相比的性能降低。

但是,在云原生应用程序中,务必要仔细评估事务。narayana-jta 扩展(管理这些事务)需要稳定的存储、唯一可重复使用的节点标识符和一个稳定 IP 地址才能正常工作。JDBC 对象存储提供稳定的存储,但用户仍必须计划如何满足其他两个要求。

要使用 JDBC 数据源存储事务日志,请配置 quarkus.transacion-manager.object-store.<property&gt; 属性,其中 & lt;property > 可以是以下选项之一:

  • Type (字符串):将此属性配置为 jdbc,以启用使用红帽构建的 Quarkus JDBC 数据源来存储事务日志。默认值为 file-system
  • Datasource (字符串):指定事务日志存储的数据源名称。如果没有为 datasource 属性提供值,Red Hat build of Quarkus 会使用默认的数据源。
  • 可以创建 (布尔值):当设为 true 时,如果事务日志表尚不存在,则会自动创建。默认值为 false
  • drop-table (布尔值):当设为 true 时,如果表已存在,则在启动时将丢弃这些表。默认值为 false
  • table-prefix (字符串):指定相关表名称的前缀。默认值为 quarkus_

还请考虑以下点:

  • 您可以通过将 create-table 属性设置为 true,在初始设置中手动创建事务日志表。
  • JDBC 数据源和 ActiveMQ Artemis 允许连接和自动注册 XAResourceRecovery 实例。

    但请注意,红帽构建的 Quarkus 支持不包括在数据库中存储事务日志的以下点:

    • JDBC datasources 是 quarkus-agroal 扩展的一部分,要求设置以下应用属性,如下所示: quarkus.datasource.jdbc.transactions=XA.
    • ActiveMQ Artemis (社区客户端)是 quarkus-pooled-jms 扩展的一部分,并且要求设置下列应用属性,如下所示: quarkus.pooled-jms.transaction=XA

      如需更多信息,请参阅 CEQ-4878

  • 为确保在应用程序崩溃或失败时数据保护,请使用 quarkus.transaction-manager.enable-recovery=true 配置启用事务崩溃恢复。
注意

要临时解决这个问题 Agroal 在运行事务检查时具有不同的视图,请为负责将事务日志写入的数据源设置数据源事务类型:

quarkus.datasource.<TX_LOG>.jdbc.transactions=disabled
Copy to Clipboard Toggle word wrap

这个示例使用 TX_LOG 作为数据源名称。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat