分布式事务管理器 ByteTCC

ByteTCC是一个基于TCC(Try/Confirm/Cancel)机制的分布式事务管理器。兼容JTA,可以很好的与Spring容器进行集成。

[size=large][color=black][b] 一、快速入门[/b][/color][/size]

[size=medium][color=black][b]1.1. 加入maven依赖[/b][/color][/size]
<dependency>
<groupId>org.bytesoft</groupId>
<artifactId>bytetcc-supports</artifactId>
<version>0.3.0-RC4</version>
</dependency>

[size=medium][color=black][b]1.2. 编写业务服务[/b][/color][/size]
@Service("accountService")
@Compensable(
interfaceClass = IAccountService.class
, confirmableKey = "accountServiceConfirm"
, cancellableKey = "accountServiceCancel"
)
public class AccountServiceImpl implements IAccountService {

@Resource(name = "jdbcTemplate")
private JdbcTemplate jdbcTemplate;

@Transactional
public void increaseAmount(String accountId, double amount) throws ServiceException {
this.jdbcTemplate.update("update tb_account set frozen = frozen + ? where acct_id = ?", amount, acctId);
}

}

[size=medium][color=black][b]1.3. 编写confirm服务[/b][/color][/size]
@Service("accountServiceConfirm")
public class AccountServiceConfirm implements IAccountService {

@Resource(name = "jdbcTemplate")
private JdbcTemplate jdbcTemplate;

@Transactional
public void increaseAmount(String accountId, double amount) throws ServiceException {
this.jdbcTemplate.update("update tb_account set amount = amount + ?, frozen = frozen - ? where acct_id = ?", amount, amount, acctId);
}

}

[size=medium][color=black][b]1.4. 编写cancel服务[/b][/color][/size]
@Service("accountServiceCancel")
public class AccountServiceCancel implements IAccountService {

@Resource(name = "jdbcTemplate")
private JdbcTemplate jdbcTemplate;

@Transactional
public void increaseAmount(String accountId, double amount) throws ServiceException {
this.jdbcTemplate.update("update tb_account set frozen = frozen - ? where acct_id = ?", amount, acctId);
}

}

[size=large][color=black][b] 二、文档 & 样例[/b][/color][/size]
[list]
[*]使用文档: https://github.com/liuyangming/ByteTCC/wiki
[*]使用样例: https://github.com/liuyangming/ByteTCC-sample
[/list]

[size=large][color=black][b] 三、ByteTCC特性[/b][/color][/size]
[list]
[*]1、支持Spring容器的声明式事务管理
[*]2、支持普通事务、TCC事务、业务补偿型事务等事务机制
[*] 3、支持多数据源、跨应用、跨服务器等分布式事务场景
[*]4、支持长事务
[*]5、支持dubbo服务框架
[/list]
[size=large][color=black][b] 四、历史版本[/b][/color][/size]
[size=medium][color=black][b]4.1. v0.1[/b][/color][/size]
[list]
[*]地址:http://pan.baidu.com/s/1hq3ffxU
[/list]
[size=medium][color=black][b]4.2. v0.1.2[/b][/color][/size]
[list]
[*]地址:http://code.google.com/p/bytetcc
[/list]
[size=medium][color=black][b]4.3. v0.2.0-alpha[/b][/color][/size]
[list]
[*]地址:http://code.taobao.org/p/openjtcc
[*]文档:http://code.taobao.org/p/openjtcc/wiki/index/
[/list]

若您有任何建议,可以通过1)加入q q群537445956向群主提出,或2)发送邮件至bytefox@126.com向我反馈。本人承诺,任何建议都将会被认真考虑,优秀的建议将会被采用,但不保证一定会在当前版本中实现

参考:[url]http://www.oschina.net/p/openjtcc/similar_projects[/url]
[url]http://www.roncoo.com/article/detail/124243[/url]
[url]http://www.iqiyi.com/w_19rsveqlhh.html[/url]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值