分布式事务


        <!--LCN分布式事务相关依赖-->
        <dependency>
            <groupId>com.codingapi</groupId>
            <artifactId>transaction-springcloud</artifactId>
            <version>${lcn.last.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>com.codingapi</groupId>
            <artifactId>tx-plugins-db</artifactId>
            <version>${lcn.last.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

若存在业务方法:a->b b->c b->d,那么开启分布式事务注解的话,需要在各个模块方法上添加@TxTransaction,并且在自己方法上添加@Transactional(因为假如自己有异常也需要回滚)。

@TxTransaction(isStart=true)
@Transactional
    public void a(){
        b();
    }
    
    @TxTransaction
@Transactional
    public void b(){
        c();
        d();
    }
    
    @TxTransaction
@Transactional
    public void c(){}
    
    @TxTransaction
@Transactional
    public void d(){}

开启服务
先开redis
然后开eureka (可以注册到自己建立的服务中心)
然后开tx-manager注册到eureka上 (只是需要将该调度注册进来)
其他服务也都注册到官方下下来的eureka上

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容