试题二(15分)
阅读以下说明,回答问题1至问题3。
【说明】
某电商平台需要重构订单系统。原系统是单体架构,随着业务增长,系统变得臃肿,部署困难,一个模块出问题整个系统崩溃。技术团队决定采用微服务架构进行重构。
【问题3】(5分)微服务架构中,分布式事务如何处理?请至少列出2种方案。
参考答案1. 最终一致性(Saga模式):将分布式事务拆分为多个本地事务,每个本地事务提交后执行下一步,如果失败则执行补偿操作回滚。
2. TCC模式(Try-Confirm-Cancel):Try阶段预留资源,Confirm阶段确认执行,Cancel阶段取消释放资源。
3. 本地消息表:通过本地消息表实现最终一致性,保证本地事务和消息发送的原子性。
4. 事务消息:利用MQ的事务消息功能保证本地事务和消息发送的一致性。