1. 首页
  2. 编程语言
  3. Java
  4. springcloud结合bytetcc实现数据强一致性原理解析

springcloud结合bytetcc实现数据强一致性原理解析

上传者: 2021-06-30 11:52:00上传 PDF文件 238.46 KB 热度 17次

实现方法必须加Transactional,且propagation必须是Required, RequiresNew, Mandatory中的一种。在每个参与tcc事务的数据库中创建bytejta表。b的confirm会不断调用直到成功为止。因为bytetcc的设计思路是,通过try做好准备工作,try如果能成功,那么逻辑上confirm一定要成功。如果confirm不成功,则可能是外部环境问题,如网络问题等,那么环境恢复了迟早应该成功confirm。基于这个思想,try和cancel是互逆的,confirm一旦执行就不可逆。所以业务上可以直接这么设计:try成功,那么confirm是一定要成功的。3 核心组件SpringCloudConfiguration原理分析第一步就import的SpringCloudConfiguration是重点,通过它的各种自动装配基本可以实现bytetcc的全逻辑。在byte-tcc的一堆resource文件里,配置了各种bean。同时,通过SpringCloudConfiguration配置的CompensableHandlerInterceptor,达到transactionInterceptor的效果。这里的compensableWork就是补偿和数据恢复专用的job。

下载地址
用户评论