关于Tcc-transcation
来源:9-27 分布式事务章节总结

慕函数2082699
2018-11-16
关于Tcc-transcation,
1、是不是每一个参与Tcc的Resource都要在Tcc数据库中创建一场表,比如说:
CAP->TCC_TRANSACTION_CAP
ORDER->TCC_TRANSACTION_ORD
RED->TCC_TRANSACTION_RED
2、比方说我CAP有两个参与Tcc的接口,我应该怎么设置:
CAP_interface_a->TCC_TRANSACTION_CAP_1
CAP_interface_b->TCC_TRANSACTION_CAP_2
3、如果第一个问题回答是yes
那在一个多域的分布式框架中,tcc数据库中的表不是会很多吗?
写回答
1回答
-
Allen
2018-11-18
这个问题是比较好的,关于TCC库中的表,是根据业务场景决定的,但是大部分时候是同一个服务一个表,所以可以说第一个问题是Yes,第二个问题的话,如果两个接口是同一个服务,不推荐两张表,更建议使用一个。
我不知道你说的多域和我理解是否一致哈,就是同一个服务会跨机房或跨地域的情况是我理解的多域。原则是不管是否跨域,同一个服务是同一张表。
基于上述内容,既然是多域的服务,你一定是已经想办法解决了数据同步的问题,事务库和内容的同步自然也不是问题了,这是相对比较推荐的方式。
或者退一万步讲,一个一次业务都会在同一个地域进行(不考虑异地容灾之类的问题), 所以事务库其实只需要回滚单一域内的事务, 基于这种场景,即便事务数据没有同步,也是可以解决你的问题的。
022018-11-19
相似问题