【柔性事务解决方案:TCC(两阶段型、补偿型)】
一个业务活动由一个主业务服务和若干从业务服务组成。主业务服务负责发起和完成整个业务活动。从业务服务提供 TCC 型业务操作。业务活动管理器负责控制业务活动的一致性。它记录业务活动中的操作,并在业务活动提交时执行所有 TCC 型操作的 confirm 操作,在业务活动取消时执行所有 TCC 型操作的 cancel 操作。
【适用范围】
强隔离性、严格一致性要求的业务活动,适用于执行时间较短的业务(比如处理账户、收费等业务)
【方案特点】
不与具体的服务框架耦合(在RPC架构中通用)
位于业务服务层,而非资源层
可以灵活选择业务资源的锁定粒度
TCC里对每个服务资源操作的是本地事务,数据被lock的时间短,可扩展性好(可以说是为独立部署的
SOA服务而设计的)