redis是否支持原子操作

理論知識:

redis 是一個高性能的key-value數據庫。 redis的出現,很大程度補償了memcached這類key/value存儲的不足,在部 分場合可以對關系數據庫起到很好的補充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客戶端,使用很方便。

原子性(atomicity):一個事務是一個不可分割的最小工作單位,要么都成功要么都失敗。

redis是否支持原子操作

原子操作是指你的一個業務邏輯必須是不可拆分的。

比如你給別人轉錢,你的賬號扣錢,別人的賬號增加錢,這個業務邏輯就是原子性的,這個操作就是原子操作,要么都成功要么都失敗。

Redis所有單個命令的執行都是原子性的。

redis 實現事務的原理

1. 批量操作在發送 EXEC 命令前被放入隊列緩存

2. 收到 EXEC 命令后進入事務執行,事務中任意命令執行失敗,其余的命令都不會被執行

3. 在事務執行過程,其他客戶端提交的命令請求不會插入到事務執行命令序列中

? 版權聲明
THE END
喜歡就支持一下吧
點贊7 分享