講人話系列 分布式事務00 緒論

2021-09-24 06:45:49 字數 896 閱讀 3084

很多時候,我們用習慣了乙個東西,會忘記當初設計它使用它的初衷,以及我們需要解決的問題。

就像資料庫事務,很多人都習慣了它的存在,聽過了它的傳說,以及它解決了很多問題。以至於很多人進行資料庫操作不用事務包裹就不舒服的地步。但是翻開了來說,你每一次事務用得對嗎?需要嗎?它到底給你解決了什麼問題?有想過嗎?

如果你沒有深思熟慮這個問題,問到事務給解決的問題,我想絕大部分的人,第一反應肯定是:兩條sql要麼同時成功、要麼同時失敗啊。事務可不僅僅是這一點點功能。

這就切入到我們今天的話題:我們分布式事務設計的初衷是什麼?我們要解決的問題是什麼?我可以很直接的說:分布式事務系統就是多個rpc呼叫(單機事務)要麼同時成功,要麼同時失敗的統一處理系統。而不是真正去實現分布式事務,是的,不是真正的實現分布式事務或許分布式事務需要打上引號。

下面我將從為什麼分布式事務的目的是這個,以為怎麼實現分布式事務兩個大的方向組織這個系列的文章,起重點主要為什麼是這個,關於為什麼目的是這個我們將從1.事務的歷史,2.innodb事務實現的簡要概述,3.常見的分布式事務解決方案的本質三個方面一步步的描述這個結論。至於怎麼實現在理解常見分布式事務原理之後,弄懂乙個關鍵點:怎麼讓服務可靠之外就沒有任何問題了。

講講事務系統和檔案系統的區別

講講acid到底是個啥

講講隔離等級又是什麼

講講acid的實現

講講隔離等級的實現以及鎖機制

講講最終一致性這個偽概念

事務維度業務呼叫型別的劃分

講講 jta 以及 xa

講講所謂可靠訊息

講講tcc

講講不吹牛是個好東西的阿里gts

前面的如果講透徹了,其實怎麼實現反而是件簡單的事情,這裡面最重要的是怎麼建立可靠的日誌,怎麼在各種宕機以後還能實現我們的目標。

WCF系列 分布式事務

跟wcf 相關的事務協議有三個。這是個輕量級的本地事務協議,限制管理在乙個 中的事務。不能跨 邊界傳播事務,也不能跨服務邊界傳播事務。跟其他協議比,lightweight protocol 是最有效率的協議。這個協議可用於跨 程序和機器邊界,管理兩階段提交的事務協議。這個跨邊界的事務協議使用 rpc...

分布式 分布式事務

是資料庫執行過程中的乙個邏輯單位,由乙個有限的資料庫操作序列構成。事務的acid四大特性 原子性 atomicity 事務作為乙個整體被執行。一致性 consistency 從乙個一致的狀態轉換到另乙個一致的狀態。隔離性 isolation 多個事務併發執行時,併發事務之間互相影響的程度。永續性 d...

分布式事務 分布式事務的實現

如果在多個服務中需要對不同的資料庫進行操作。因為不同服務操作的資料庫都不同,所以保證在同乙個事務中完成操作顯然是不科學的。那實現分布式事務的思想 1 方法入口,建立一條日誌記錄,狀態定義為初始狀態,即儲存本條日誌記錄 可以儲存在資料庫中,也可以寫出到本地磁碟檔案 2 可以在非同步執行緒或在定時任務中...