Redis 學習之事務以及鎖機制

說起事務就不得不提數據庫事務,比如mysql

mysql redis
開啓事務 start transaction multi
形式 sql語句 普通命令
失敗處理 rollback 回滾 discard 取消
成功 commit exec

注: 在mutil後面的語句中, 語句出錯可能有2種情況
1: 語法就有問題,
這種,exec時,報錯, 所有語句得不到執行
2: 語法本身沒錯,但適用對象有問題. 比如 zadd 操作list對象
Exec之後,會執行正確的語句,並跳過有不適當的語句.

mysql 事務demo

SELECT *FROM tb_account
INSERT INTO tb_account VALUES(2,100,'YY');
START TRANSACTION;
UPDATE tb_account SET money = money - 100 WHERE id = 1;
ROLLBACK

redis 事務 demo
在這裏插入圖片描述redis 鎖機制–樂觀鎖
什麼情景會出現鎖機制呢?
當我們買票的時候 看到還剩一張 但是在點擊購買的時候到 提交事務之間 別人已經提交成功購買成功。所以出現鎖機制。
悲觀鎖
世界充滿危險,肯定有人和我搶, 給 ticket上鎖, 只有我能操作. [悲觀鎖]
樂觀鎖
沒有那麼人和我搶,因此,我只需要注意,有沒有人更改票的值就可以了 [樂觀鎖]
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章