LCN分布式事务框架:模式解析与应用
144 浏览量
更新于2024-08-31
收藏 1017KB PDF 举报
"【分布式事务----LCN】LCN原理及使用方式详解"
分布式事务框架LCN(Local Commit Notification)是一种非侵入式的解决方案,它不直接创建分布式事务,而是通过协调本地事务来确保最终的一致性。LCN模式主要分为三个部分:LCN模式、TCC模式和TXC模式。
1. LCN模式:此模式利用代理Connection,使得本地事务能够被集中管理。它的工作原理是通过一个代理,对本地事务进行操作,同时由TxManager负责全局事务的协调。当本地事务结束时,代理执行假操作并由LCN连接池管理。这种模式的优点在于代码嵌入性较低,适合那些已有本地连接且能控制事务的模块,确保了数据一致性,但连接释放需要与事务一起完成可能导致额外延迟。
2. TCC模式(Try-Confirm-Cancel):TCC模式强调业务逻辑的控制,不依赖于传统的两阶段提交协议。业务流程分为三个步骤:Try阶段尝试执行业务操作,Confirm阶段确认操作成功,Cancel阶段撤销操作。它的优点是灵活性高,适应性强,可以处理无本地事务的情况,但对业务代码的编写要求较高,因为它需要为每种操作设计对应的try、confirm和cancel方法。
3. TXC模式:淘宝提出的TXC模式,通过预判SQL的影响范围并保存执行信息,执行时获取锁,回滚时根据记录回滚数据库。它对代码的侵入性较小,只适用于支持SQL操作的模块,但因为需要预先查询影响数据,所以相比LCN模式,性能上可能有所损耗,并且不占用数据库连接资源。
总结起来,LCN提供了一种轻量级的分布式事务解决方案,降低了代码改动,但可能牺牲部分性能;TCC模式则提供了更灵活的控制,但对业务逻辑实现的要求更高;而TXC模式则侧重于资源管理和预判,对SQL操作有特定适用场景。在选择使用哪种模式时,需根据项目的具体需求和资源限制进行权衡。"
2020-01-09 上传
2018-10-10 上传
2022-03-04 上传
2021-01-27 上传
2019-12-18 上传
2019-04-16 上传
2019-08-02 上传
weixin_38746387
- 粉丝: 332
- 资源: 1308
最新资源
- BottleJS快速入门:演示JavaScript依赖注入优势
- vConsole插件使用教程:输出与复制日志文件
- Node.js v12.7.0版本发布 - 适合高性能Web服务器与网络应用
- Android中实现图片的双指和双击缩放功能
- Anum Pinki英语至乌尔都语开源词典:23000词汇会话
- 三菱电机SLIMDIP智能功率模块在变频洗衣机的应用分析
- 用JavaScript实现的剪刀石头布游戏指南
- Node.js v12.22.1版发布 - 跨平台JavaScript环境新选择
- Infix修复发布:探索新的中缀处理方式
- 罕见疾病酶替代疗法药物非临床研究指导原则报告
- Node.js v10.20.0 版本发布,性能卓越的服务器端JavaScript
- hap-java-client:Java实现的HAP客户端库解析
- Shreyas Satish的GitHub博客自动化静态站点技术解析
- vtomole个人博客网站建设与维护经验分享
- MEAN.JS全栈解决方案:打造MongoDB、Express、AngularJS和Node.js应用
- 东南大学网络空间安全学院复试代码解析