登录/注册
KESIS 有个微服务架构下分布式事务的一致性保障及高并发压测失效问题

有个微服务架构下分布式事务的一致性保障及高并发压测失效问题

25 浏览
0

毕业论文题目是“基于 Seata 的高性能微服务分布式事务一致性优化研究”。目前在搭建实验环境进行压力测试时,遇到了两个非常棘手的问题,严重影响了对比实验的数据结果:

  1. 高并发下的全局锁竞争:在模拟双十一秒杀场景时,我使用了 Seata 的 AT 模式。当并发线程达到 2000+ 时,数据库连接池瞬间爆满,大量请求因为等待全局锁(Global Lock)超时而报错。

  2. 具体困惑:数据回滚残留:在模拟网络分区(Network Partition)故障时,虽然 Seata 触发了回滚,但由于下游某服务处于宕机状态,Undo Log 无法被正确清理,导致数据库中出现了大量的“僵尸数据”,手动清理非常麻烦。响应延迟:加入分布式事务后,系统的平均响应时间(RT)比不带事务时增加了 3 倍。大家在写论文时,是如何平衡 强一致性 和 系统吞吐量 的?

  3. 开发环境:Spring Cloud Alibaba, Seata 1.5.2, MySQL 8.0, Redis 6.0。

附上我的系统拓扑图和压测曲线。求指点!

段星阑 已回答的问题
0

回滚残留的问题,建议检查一下你的 RM(资源管理器) 是否配置了自动重试机制。 如果下游服务宕机,Seata TC 会持续发起回滚请求。你需要配置一个死信队列或者手动补偿接口。 论文里可以画一个 CAP 定理 的权衡图,重点讨论在弱网络环境下,你的系统是如何在 A(可用性)和 C(一致性)之间做动态权衡的。

毛彦甫 发表新评论
Avatar photo

建议很及时,我准备把库存服务改成 TCC 模式试一下。

您正在查看2个答案中的1个,单击此处查看所有答案。