首页
/ ByteTCC 分布式事务管理器快速入门指南

ByteTCC 分布式事务管理器快速入门指南

2026-01-17 09:16:15作者:蔡怀权

本文档将指导你了解并设置基于TCC机制的ByteTCC分布式事务管理器。

1. 项目目录结构及介绍

ByteTCC/
├── idea/                # IDEA 工程配置文件
├── bytetcc-common/      # 公共模块,包括核心接口定义
├── bytetcc-core/        # 核心模块,实现TCC事务协调器
├── bytetcc-supports-dubbo   # Dubbo适配模块
├── bytetcc-supports-springboot  # Spring Boot支持模块
└── bytetcc-supports-springcloud  # Spring Cloud支持模块
  • bytecc-common 包含TCC模式下的通用接口和异常类。
  • bytecc-core 提供了TCC事务处理器和相关的基础组件。
  • bytecc-supports-dubbo 适配Dubbo服务,使得服务端能够处理TCC事务。
  • bytecc-supports-springbootbytecc-supports-springcloud 分别为Spring Boot和Spring Cloud应用提供了集成方案。

2. 项目的启动文件介绍

在实际的应用中,ByteTCC通常作为服务端的一个组件运行,因此启动文件通常是应用程序中的主类,例如在Spring Boot应用中:

package com.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.bytesoft.tcc.ApplicationConfigurer;

@SpringBootApplication
public class MyApplication {

    public static void main(String[] args) {
        // 配置TCC事务管理器
        ApplicationConfigurer.configurer()
            .withTransactionManager("byteTcc")
            .register();
        
        SpringApplication.run(MyApplication.class, args);
    }

}

这里的关键是调用ApplicationConfigurer来配置并注册TCC事务管理器。

3. 项目的配置文件介绍

Spring Boot 示例

在Spring Boot应用中,你可以通过application.yml或application.properties来配置ByteTCC:

application.yml

tcc:
  transaction-manager-id: byteTcc
  registry:
    type: zookeeper
    address: localhost:2181
  service:
    timeout: 3000       # 服务调用超时时间(毫秒)
    retry-times: 2       # 重试次数

application.properties

tcc.transaction-manager-id=byteTcc
tcc.registry.type=zookeeper
tcc.registry.address=localhost:2181
tcc.service.timeout=3000
tcc.service.retry-times=2

配置项解释:

  • tcc.transaction-manager-id:指定事务管理器的ID。
  • tcc.registry.type:注册中心类型,例如zookeeper
  • tcc.registry.address:注册中心地址。
  • tcc.service.timeout:服务调用的超时时间。
  • tcc.service.retry-times:服务调用失败后的重试次数。

完成上述步骤后,你的应用就可以利用ByteTCC来处理分布式事务了。如有疑问,可参考官方文档User Guide,或加入开发者QQ群讨论。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
27
11
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
514
3.69 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
873
538
pytorchpytorch
Ascend Extension for PyTorch
Python
316
360
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
333
152
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.31 K
732
flutter_flutterflutter_flutter
暂无简介
Dart
757
182
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
12
1
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
67
20
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.05 K
519