Skip to content

Master #14

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Sep 1, 2021
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
update txlcn
  • Loading branch information
xlorne committed Jul 5, 2020
commit 740e54dc71c1ba484b83b42fbbca5336b20be9e6
14 changes: 2 additions & 12 deletions _data/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,6 @@
docs:
- home

- title: Java
- title: TX-LCN v5.0
docs:
- codingapi-test

- title: DeepLearning
docs:
- lesson01

- title: TX-LCN
docs:
- txlcn-index
- txlcn-lesson01
- txlcn-lesson02
- txlcn-start
10 changes: 1 addition & 9 deletions _docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,7 @@ redirect_from: /docs/index.html

## 欢迎加入CodingApi

我曾经得意与我是一名优秀的程序员,我可以用更短的时间做出更好的东西。我曾经得意与我是一名架构师,我可以将负责的系统架构用清晰的架构来规划出实现思路。我现在是公司CTO,我发现一个好的产品靠一个好的程序员或是好的架构师也根本打造不出来。

我想任何人在小时候,小老师和家长都在说应该好好学习,大家肯定都认可好好学习是对的。突然有人说他晚上写作业写到很晚时,然后你也会附和一下,还特意将头转向对方然后对他说:恩,我有时候也这样。

我给很多人讲敏捷思维后,很多人也都说,嗯嗯 就是这样,我们也这样做需求或什么..。我想问那为什么项目还是做黄了,读敏捷管理,你就知道其实它只是一个宣言,并没有告诉大家具体落地的方式。

大道理大家都懂,但是如何以一种的好的方式去激励着自己前行下去才是最有价值的东西。

我认为敏捷思维,至少需要从三种角度去落地:项目管理、技术能力、团队激励。只有建立一套优良的制度体系才能让敏捷落地。加入CodingApi,大家一同去探索与学习如何从0开始搭建敏捷之路。
        大家好,我是lorne,有段时间没有推进框架的事情。最近要开始推进维护6.0版本了。目前正处于研发初期状态,项目代码相对比较简单,比较容易参与进来,现在只是把基本的框架搭建完了。但是还有大量的工作尚未开始,例如TM的重试机制、TM补偿机制、TXC模式、MQ模式 、TCC模式、TM选举、TM负载机制等都尚未开始。若你想提升自己的技术能力,或者想参与到开源项目中,欢迎加入群,大家共同探讨进步。


<div align="center"><img src="/img/qrcode330.jpg" style="width:300px;" /></div>
Expand Down
30 changes: 30 additions & 0 deletions _docs/txlcn/background.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# 背景

&nbsp;&nbsp;&nbsp;&nbsp;LCN框架在2017年6月份发布第一个版本,从开始的1.0,已经发展到了5.0版本。
LCN名称是由早期版本的LCN框架命名,在设计框架之初的1.0 ~ 2.0的版本时框架设计的步骤是如下,各取其首字母得来的LCN命名。

锁定事务单元(lock)
确认事务模块状态(confirm)
通知事务(notify)

&nbsp;&nbsp;&nbsp;&nbsp;5.0以后由于框架兼容了LCN、TCC、TXC三种事务模式,为了避免区分LCN模式,特此将LCN分布式事务改名为TX-LCN分布式事务框架。

## 框架定位

> LCN并不生产事务,LCN只是本地事务的协调工

TX-LCN定位于一款事务协调性框架,框架其本身并不操作事务,而是基于对事务的协调从而达到事务一致性的效果。


## 解决方案
&nbsp;&nbsp;&nbsp;&nbsp;在一个分布式系统下存在多个模块协调来完成一次业务。那么就存在一次业务事务下可能横跨多种数据源节点的可能。TX-LCN将可以解决这样的问题。

&nbsp;&nbsp;&nbsp;&nbsp;例如存在服务模块A 、B、 C。A模块是mysql作为数据源的服务,B模块是基于redis作为数据源的服务,C模块是基于mongo作为数据源的服务。若需要解决他们的事务一致性就需要针对不同的节点采用不同的方案,并且统一协调完成分布式事务的处理。


![](../../img/docs/abc.png)


方案:

&nbsp;&nbsp;&nbsp;&nbsp;若采用TX-LCN分布式事务框架,则可以将A模块采用LCN模式、B/C采用TCC模式就能完美解决。
Loading