事務的核心是鎖和併發
事務這個東西優勢是方便理解
劣勢就是效能低
計算機就想乙個打字機,同時只能打入乙個字
要麼讀,要麼寫,要麼算
iops很低,但吞吐量高,大量的操作合併成乙個批量處理,效能最高。如何才能把大量操作合併成乙個進行處理呢,使用非同步
慢速裝置:磁碟,網路
使用非同步多執行緒的方式
樂觀鎖和悲觀鎖:
樂觀鎖一直自迴圈,執行緒不切出去等待,過一會詢問一次看鎖有沒有釋放,直到鎖釋放,而悲觀鎖是等當前持鎖的人完成鎖釋放後,去通知它,它才進來
為什麼說樂觀鎖適用於爭搶不太嚴重的場景,而悲觀鎖適合併發嚴重的場景?
悲觀鎖線程切換出去一次需要500個單位時間,樂觀鎖適用while迴圈,第一次沒獲取鎖,再迴圈一次,只要1個單位時間後就能獲取鎖。
讀讀(先讀再讀)如果要並行,需要用到讀寫鎖。
寫讀或讀寫優化,需要用到mvcc.
寫寫操作使用悲觀鎖或樂觀鎖。
分布式 分布式事務
是資料庫執行過程中的乙個邏輯單位,由乙個有限的資料庫操作序列構成。事務的acid四大特性 原子性 atomicity 事務作為乙個整體被執行。一致性 consistency 從乙個一致的狀態轉換到另乙個一致的狀態。隔離性 isolation 多個事務併發執行時,併發事務之間互相影響的程度。永續性 d...
分布式事務 分布式事務的實現
如果在多個服務中需要對不同的資料庫進行操作。因為不同服務操作的資料庫都不同,所以保證在同乙個事務中完成操作顯然是不科學的。那實現分布式事務的思想 1 方法入口,建立一條日誌記錄,狀態定義為初始狀態,即儲存本條日誌記錄 可以儲存在資料庫中,也可以寫出到本地磁碟檔案 2 可以在非同步執行緒或在定時任務中...
分布式之分布式事務
被人問到分布式事務,之前學rabbitmq 的時候學到過rabbitmq 高階的事務,因為沒有用過,所有沒有回答好。這裡總結一下。1.單機版事務。事務的四大特性 acid a.原子性 b.一致性 c.隔離性 d.永續性 單機事務可以通過設定事務的隔離級別 參見spring 的事務隔離級別 2.分布式...