Transaction Manager for Microservices

Oracle Transaction Manager for Microservices (MicroTx) 可通过启用分布式事务来确保在 Kubernetes 和/或其他环境中部署的多语言微服务的一致性,从而简化应用开发和运行。

跨基于微服务的应用确保数据一致

您可以使用 MicroTx 来确保微服务和云原生应用数据一致,无需编写任何复杂代码。利用事务协议以及客户端库中的 API 和注释,MicroTx 支持您轻松地在基于 Kubernetes 和 Docker Swarm 部署的应用中使用分布式事务。

以下展示了 MicroTx 如何跨基于微服务的应用确保数据一致 MicroTx 的核心是事务协调器,它支持三种协议:XA、Long Running Actions 和 Try-Confirm/Cancel。事务协调器是一个基于 Kubernetes 集群或 Docker Swarm 部署的容器中的微服务,基于微服务的应用将通过 MicroTx 库实施的 REST API 与事务协调器通信。MicroTx 库可隐藏应用与协调器之间的所有详细通信信息,大大简化应用开发。如果将 MicroTx 部署在 Kubernetes 集群中,MicroTx 可以与其他 Kubernetes 生态系统工具(例如 Prometheus/Grafana 和 Kiali)良好集成在一起。

MicroTx 提供以下两种选择:

  • MicroTx Free:一款让任何人都可以下载和开发事务性微服务的免费产品。MicroTx Free 支持有限的事务吞吐量,建议用于评估和应用开发。MicroTx Free 具备基于社区的支持服务。
  • MicroTx Enterprise Edition:MicroTx Enterprise Edition 主要面向企业应用的生产部署,包含了高可用性、可扩展性和弹性以及企业应用所需的其他功能。MicroTx Enterprise Edition 对事务处理吞吐量没有限制。产品许可证随附提供 Oracle Support。

MicroTx 的特性

事务处理模式

  • 强一致性:MicroTx 支持行业标准 XA 协议,可跨微服务实现强数据一致性,同时支持对非 XA 资源实施“记录上一个资源”(LLR) 事务优化。
  • 最终一致性:MicroTx 为旅行预订等使用场景实施 Eclipse MicroProfile 的 long-running actions (LRA) 规范,支持 Saga 模式。
  • 预订模式:为遵守预订模型的使用场景提供 Try-Confirm/Cancel 模式支持。

简化应用开发

  • 简单易用的 API:MicroTx 提供了一些 API,您可以在现有应用中轻松使用这些 API 来启用分布式事务。
  • 减少开发人员开销:使用 MicroTx,您只需对现有应用代码进行少量更改。
  • 语言和框架支持:MicroTx 使用多种应用框架(例如 Helidon、Spring Boot 和 Express)为 Java 和 TypeScript 提供事务分界 API。
  • Spring Boot 特定的 MicroTx 库可用于支持应用开发。
  • 从同一个应用中,访问全局事务处理中的多个资源管理器。

与现有应用的 XA 的互操作性

  • 数据库 ORDS/APEX 应用/服务可参与由 MicroTx 协调的 XA 事务。
  • 现有 Tuxedo 应用服务可以与许多其他微服务一样用于同一 XA 事务。
  • 托管在 Oracle Blockchain Platform 上的区块链应用可以成为由 MicroTx 协调的 XA 事务中的资源之一。
  • 在 Oracle WebLogic Server 等应用服务器上运行的现有 J2EE 应用可以加入全局 XA 事务处理。

优化(仅限 Enterprise Edition)

  • 如果涉及多个资源管理器,则将本地事务处理自动升级到全局事务处理。
  • 为中间事务状态存储进行缓存,从而降低延迟并提高吞吐量。
  • 如果多个微服务刚好与同一资源管理器通信,则进行通用 XID 优化。

高可用性、可扩展性和弹性(仅限 Enterprise Edition)

  • Oracle Database 或 etcd 中事务处理状态的永久性存储。
  • 事务处理协调器的集群部署。
  • 支持 Oracle Real Application Clusters (RAC)。

MicroTx 的优势

  • 提高开发人员工作效率

    MicroTx 无需开发人员编写业务逻辑来补偿失败事务和相关的复杂测试,可提高开发人员效率,加快应用投放市场速度。

  • 充分利用现有资产和开发人员框架

    开发人员可以继续使用现有工具和框架,只需对现有应用进行少量更改。

  • 基于行业标准

    MicroTx 使用行业标准事务协议(例如 XA、LRA 和 TCC)实现数据一致性,可降低供应商锁定风险。

  • 在多语言应用中实现一致性

    MicroTx 支持基于 Java、TypeScript、C/C++ 等语言和框架编写的多语言微服务参与全局分布式事务。

    阅读产品介绍 (PDF)

赶快行动


在 Oracle Cloud 免费套餐中试用 MicroTx

免费在 Oracle Cloud 上构建、测试和部署应用。


试用示例应用

从 GitHub 资料档案库下载 MicroTx 示例应用,并在您自己的环境中运行。


联系销售

想了解更多信息?请联系我们的专家。

注:为免疑义,本网页所用以下术语专指以下含义:

  1. Oracle专指Oracle境外公司而非甲骨文中国。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。