开发者社区 > 云原生 > 中间件 > 正文

Seata怎么在非spring的微服务下集成?

我看官网example下全是spring下的集成样例,唯一的api的demo是同应用多数据源情况,但是我这边是多个javaweb应用,并且不是spring框架,多个服务之间存在rest调用,这种情况seata是否可以集成使用呢?有没有对应的例子呢?
谢谢

展开
收起
1591426265606217 2023-11-14 16:11:22 86 0
2 条回答
写回答
取消 提交回答
  • Seata本身是一个分布式事务管理器,它可以在任何支持JVM的语言和框架中运行。虽然Seata官方提供的示例主要是基于Spring的,但这并不意味着Seata只能与Spring集成。

    在你的情况下,你正在使用非Spring的JavaWeb应用,并且这些应用之间存在REST调用。这种情况下,Seata完全可以集成使用。你需要做的是在每个应用中引入Seata的依赖,并在每个应用的配置文件中配置Seata的相关参数。

    关于具体的集成步骤和示例,你可以参考Seata官方文档的"Quick Start"部分。这部分内容提供了如何在非Spring的应用中集成Seata的详细步骤。

    另外,Seata还提供了一个名为"Seata-TCC"的项目,这个项目提供了一个基于Seata的TCC模式实现。虽然这个项目是基于SpringBoot的,但是你可以参考这个项目来学习如何在非Spring的应用中使用Seata的TCC模式。

    2023-11-30 12:03:56
    赞同 展开评论 打赏
  • Seata是可以支持非Spring环境下的应用的。但是因为Seata的官方文档主要面向的是Spring生态,所以对于非Spring的应用可能需要更多的自定义配置和处理。关于非Spring环境下Seata的集成,可以从以下几个方面着手:

    1. Seata Server的启动:您可以根据官方文档在独立的进程中启动Seata Server,并设置相关的配置参数;
    2. 应用的接入:在每个应用中,您需要实现Seata Client的功能,主要涉及到XID和RM的创建和管理。这里可以参考Seata官方文档的《分布式事务系列——Seata AT》一文;
    3. RM的注册:Seata Server需要知道哪些应用需要用到AT模式,所以需要将应用注册到Seata Server中;
    4. 创建Transaction Manager和Resource Manager:按照Seata官方文档中提到的步骤,创建Transaction Manager和Resource Manager。
    2023-11-14 16:44:50
    赞同 展开评论 打赏

为企业提供高效、稳定、易扩展的中间件产品。

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载