2022谷粒商城学习笔记(二十三)分布式事务
生活随笔
收集整理的這篇文章主要介紹了
2022谷粒商城学习笔记(二十三)分布式事务
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
本系列博客基于B站谷粒商城,只作為本人學習總結使用。這里我會比較注重業務邏輯的編寫和相關配置的流程。有問題可以評論或者聯系我互相交流。原視頻地址谷粒商城雷豐陽版。本人git倉庫地址Draknessssw的谷粒商城
分布式事務
假使因為網絡問題導致庫存在提交訂單時扣除成功,但是訂單取消……本地事務回滾,但是調用的遠程服務數據回滾失敗。
分布式事務
事務的隔離級別
CAP
必須滿足分區容錯性,一致性和可用性二選一。
base
實現方案
seata使用
在每個需要使用的微服務的數據庫添加undo_log表來記錄事務操作
-- 注意此處0.3.0+ 增加唯一索引 ux_undo_log CREATE TABLE `undo_log` (`id` bigint(20) NOT NULL AUTO_INCREMENT,`branch_id` bigint(20) NOT NULL,`xid` varchar(100) NOT NULL,`context` varchar(128) NOT NULL,`rollback_info` longblob NOT NULL,`log_status` int(11) NOT NULL,`log_created` datetime NOT NULL,`log_modified` datetime NOT NULL,`ext` varchar(100) DEFAULT NULL,PRIMARY KEY (`id`),UNIQUE KEY `ux_undo_log` (`xid`,`branch_id`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;因為我的nacos版本是1.3.1,所以我整合seata參考了這篇博文
naocs1.3.2整合seata1.3.0
但是有一點,seata不太適合高并發場景,它的各種隔離讀,隔離寫,都是需要獲取全局鎖,最后是一種串行化操作。
總結
以上是生活随笔為你收集整理的2022谷粒商城学习笔记(二十三)分布式事务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机用户不设置密码,笔记本电脑密码设置
- 下一篇: 安卓进程优先级调高