seata tcc support one-phase data storage that stores local table

h22fl7wq  于 2个月前  发布在  其他
关注(0)|答案(1)|浏览(27)

Why you need it?

Is your feature request related to a problem? Please describe in details
tcc目前支持将一阶段的数据存储至tc,这对tc端是一个开销
我们已有tcc防悬挂表,可在其中增加application_data字段,进行存储数据,这样免去了额外的rpc开销,也减轻了对tc的负担,且存储到本地时,由于防悬挂表的插入是跟本地事务一并插入,这样原子性也可以得到保障,避免一阶段数据存储到tc后,其实一阶段失败本地事务已经回滚了,这个数据也就无用的情况发生
需要有开关决定是存储至tc还是本地
提供一个api,让用户塞数据,在切面结束前再存入数据库
二阶段的时候需要自动从本地防悬挂表中读取,放入BusinessActionContext 中

How it could be?

A clear and concise description of what you want to happen. You can explain more about input of the feature, and output of it.

Add any other context or screenshots about the feature request here.

相关问题