首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

分布式事务有什么轻量的解决方案?少配置,简依赖,开箱即用(我是不是太贪婪了- -)

  •  
  •   Breadykid · 74 天前 · 1116 次点击
    这是一个创建于 74 天前的主题,其中的信息可能已经有所发展或是发生改变。

    场景: 同步 2 个数据库表,tableA<->tableB

    框架: Spring Cloud

    我的实现:

    serviceA 的一个事务内,

    需要调用 serviceB 的服务插入批量插入数据,

    由于 serviceA 内是走循环分批读完百万数据,

    每读取 1000 条就调用 serviceB 进行数据的插入操作,

    目前不知道插到某一条( 10000 )失败的话,之前的 9999 条如何回滚?

    10 回复  |  直到 2019-07-11 23:07:04 +08:00
        1
    fanfou   74 天前
    txlcn
        2
    pifuant   74 天前
    分布式事务成熟方案, 基本没有, 各种轮子罢了
        3
    hosaos   74 天前
    你这数据同步,和事务也没啥关系吧,你报错了 直接删除 B 的所有相关数据,或者重新写入报错的数据到 B
        4
    zhangtao   74 天前
    tcc
        5
    love   74 天前
    为啥要回滚?不能接着上次断的位置插吗?
        6
    night98   74 天前
    阿里开源了一款,不过分布式事务本身就基本上不可能满足你的这几个需求
        7
    Breadykid   73 天前
    @hosaos 就是不知道怎么删除 B 里的本次事务操作的所有数据,首先不能清表,有历史数据,其次,这个表里的字段是动态的,没有指定的主键或者唯一字段可以区分某一条数据
        8
    LeeSeoung   73 天前
    seata
        10
    Breadykid   71 天前
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2306 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 20ms · UTC 13:39 · PVG 21:39 · LAX 06:39 · JFK 09:39
    ♥ Do have faith in what you're doing.