巢狀事務的一次實踐

2021-07-22 12:16:16 字數 351 閱讀 9055

最近在乙個專案中,需要實現自動對賬功能,收銀機會定時對比本地和遠端的訂單,遠端發現缺少的,會自動補全。所謂補全,就是批量插入缺失的訂單。

基於這個場景,就存在乙個細節的問題,因為插入訂單涉及兩個表,如果某些情況下,乙個表插入失敗,訂單插入事務需要回滾。但是不能回滾之前插入的訂單資料,顯然這裡就設計子事務問題。

現在這個對賬功能,是a->b這個方式,b就是訂單插入方法。a使用的是通常的required事務模式。現在需要給b重新配置乙個事務模式。

nested 和 requiresnew 都可以解決這個問題,但考慮到requiresnew相當於重新建立乙個鏈結效能較差,所以最終採用nested。

最後測試結果表明,達到預期目的。

一次事務過程

第二篇 一次事務過程 對於開發人員來說,我們經常做的是啟動乙個事務,執行sql,提交事務。這就完成了我們的工作。但是,就在這些簡單的動作背後,網路和資料庫都做了些什麼呢。我們都想知道。下面以乙個例項來說明。背景 使用者正執行乙個連線到oracle資料庫的客戶端應用程式,是乙個員工檔案管理程式。過程 ...

一次完整的HTTP事務

http通訊機制是在一次完整的http通訊過程中,web瀏覽器與web伺服器之間將完成下列7個步驟 1.建立tcp連線 在http工作開始之前,web瀏覽器首先要通過網路與web伺服器建立連線,該連線是通過tcp來完成的,該協議與ip協議共同構建internet,即著名的tcp ip協議族,因此in...

一次元件化的實踐

更新 1.mvvm 可以將網路層轉移到viewmodel 層中,這樣就不需要將網路層抽離了,因為本來就沒和 控制器耦合。2.每次使用蜂巢的時候 控制器一定要實現 服務的協議,不然蜂巢會崩,還很難找到原因 3.蜂巢方案 雖然分離了控制器業務的耦合,但是引入了protocol 協議的耦合。同時需要維護 ...