背景介绍:
最近一个积分兑换优惠券的问题排查了半天,终于找出了问题。至于这个原因我任务分布式事务框架还是可以做一下优化的。
流程介绍:
问题说明:
在调用扣积分的过程中,dubbo调用超时抛出异常,主事务捕获异常,调用事务回滚逻辑。所以直接调用了积分补偿的接口,但是积分补偿的接口判断没有该业务流水(为了接口的幂等性)直接返回正确结果。分布式事务以为补偿已经成功,整个事务完成。但是扣积分的接口超时的时间是不定的,如果在补偿之后才扣成功,那么就相当于补偿失败了。我们遇到的正是这种情况,所以导致分布式事务监控系统查到了事务补偿已经正确执行,但是扣的积分没有返回的情况。
相关推荐
作为一个刚入Golang坑的普通微服务开发者所做的,很容易产生一个朴素的想法,希望Golang微服务也有分布式事务解决方案。本项目尝试将Java版的Seata改写一个Golang的版本。在Seata没有Golang版本client sdk的情况下,...
Java并发库(如ExecutorService)和分布式事务处理框架(如X/Open XA或Atomikos)可以帮助实现这一目标。 4. **监控管理**:监控任务的状态和系统性能至关重要。这包括任务的进度、错误报告、资源利用率等信息。...
采用分布式事务管理解决方案,如两阶段提交(2PC)、事件溯源等技术;实现统一的服务治理体系,集成服务监控、链路追踪和自愈机制等;构建一套完整的CI/CD流程,以支持快速迭代和多环境部署。 6. 58速运微服务架构...
面试官还询问了SpringCloud与RPC框架的区别,以及在使用SpringCloud时遇到的坑,比如Eureka注册中心的降级问题。 算法题同样出现在面试中,例如如何在一个无序的40亿数字列表中找出缺失的数字,以及如何快速计算一...
40_如何设计一个类似dubbo的rpc框架?架构上该如何考虑? 41_说说zookeeper一般都有哪些使用场景? 42_分布式锁是啥?对比下redis和zk两种分布式锁的优劣? 43_说说你们的分布式session方案是啥?怎么做的? 44_了解...
分布式事务 分布式会话 高可用架构 高可用系统 如何设计一个高可用系统? 限流 熔断 如何进行熔断? 熔断框架都有哪些?具体实现原理知道吗? 降级 如何进行降级? 微服务架构 Spring Cloud 微服务架构 Spring Cloud...
分布式事务 分布式会话 高可用架构 高可用系统 如何设计一个高可用系统? 限流 熔断 如何进行熔断? 熔断框架都有哪些?具体实现原理知道吗? 降级 如何进行降级? 微服务架构 Spring Cloud 微服务架构 Spring Cloud...
- 数据一致性:微服务间的数据操作可能会导致一致性问题,需要引入分布式事务管理或最终一致性策略。 6. 电商平台的具体实现: - 前端展现层(B/S架构):使用浏览器作为客户端,方便用户访问。 - 后端服务层:...
9. 本项目偏向于个人的未知领域探索实现(绝对不是因为偷懒,笑),比如分布式事务如何保证最终一致性等,所以对个别功能定了计划但并没有实现, 比如:百度地图的区域可视化,收获地址管理等(以前的作品都实现过的...
的被使用,被调用,而是深刻的介入到一个领域中去,J2EE 等框架软件设计的目的是将一个领域中不变的东西先定义好,比如 整体结构和一些主要职责(如数据库操作 事务跟踪 安全等),剩余的就是变化的东西,针对这个领域...
面试必考之HashMap源码分析与实现 探索JVM底层奥秘ClassLoader源码分析与案例讲解 面试必备技能之Dubbo企业实战 分布式框架Zookeeper之服务注册与订阅 互联网系统垂直架构之...无处不在的Spring AOP事务及踩过的坑
Spring5是中国Java开发者广泛使用的轻量级开源框架,它的出现极大地简化了企业级应用的开发。这个主题聚焦在从官方获取Spring5的源码,编译过程中的难点以及如何使用Gradle来管理项目。让我们深入探讨一下这些知识点...
Easy.Core.Flow是一个专为.NET Core开发者设计的库,致力于提供日常开发中的技术要点讲解。作者在不断更新和补充内容,涵盖了一系列关键技术和实践,旨在帮助开发者深入理解并熟练运用各种开发工具和技术。 1. **...