国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Redis > 正文

redis事務常用操作詳解

2020-10-28 21:29:46
字體:
來源:轉載
供稿:網友

事務

MULTI 、 EXEC 、 DISCARD 和 WATCH 是 Redis 事務相關的命令。事務可以一次執行多個命令, 并且帶有以下兩個重要的保證:

事務是一個單獨的隔離操作:事務中的所有命令都會序列化、按順序地執行。事務在執行的過程中,不會被其他客戶端發送來的命令請求所打斷。

事務是一個原子操作:事務中的命令要么全部被執行,要么全部都不執行。

EXEC 命令負責觸發并執行事務中的所有命令

如果客戶端在使用 MULTI 開啟了一個事務之后,卻因為斷線而沒有成功執行 EXEC ,那么事務中的所有命令都不會被執行。
另一方面,如果客戶端成功在開啟事務之后執行 EXEC ,那么事務中的所有命令都會被執行。
當使用 AOF 方式做持久化的時候, Redis 會使用單個 write(2) 命令將事務寫入到磁盤中。

然而,如果 Redis 服務器因為某些原因被管理員殺死,或者遇上某種硬件故障,那么可能只有部分事務命令會被成功寫入到磁盤中。

如果 Redis 在重新啟動時發現 AOF 文件出了這樣的問題,那么它會退出,并匯報一個錯誤。

使用redis-check-aof程序可以修復這一問題:它會移除 AOF 文件中不完整事務的信息,確保服務器可以順利啟動。

從 2.2 版本開始,Redis 還可以通過樂觀鎖(optimistic lock)實現 CAS (check-and-set)操作,具體信息請參考文檔的后半部分。Redis事務可以執行一系列的腳本,并且帶有以下兩個重要的保證:

批量的命令在Exec命令之前,事務中任意命令執行失敗,其余的命令依然被執行。在事務執行過程,其他客戶端提交的命令請求不會插入到事務執行命令序列中。

一個事務從開始到執行會經歷以下三個階段:開始-入隊-執行。本文介紹下Redis事務的常用命令。

DISCARD取消事務,放棄執行事務塊內的所有命令。命令的執行如下所示。先選取一段命令,然后執行該命令取消

Exec命令:執行所有的腳本命令。事務塊內所有命令的返回值,按命令執行的先后順序排列。 當操作被打斷時,返回空值 nil 。

# 監視 key ,且事務成功執行。可以監控Key的值的變化以及執行事務的執行情況。

# 監視 key ,且事務執行中斷。可以監控事務的執行情況,以及事務中斷的情況。

Redis Multi 命令。用于標記一個事務塊的開始。事務塊內的多條命令會按照先后順序被放進一個隊列當中,輸入完成命令之后,輸入exec執行命令。

UNwatch命令用于取消事務的監視。當輸入一個命令監視時,可以通過UNwatch命令,取消對命令的監視。

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 方正县| 上林县| 肃南| 运城市| 平安县| 隆德县| 罗江县| 九龙坡区| 南涧| 江门市| 衢州市| 谷城县| 那坡县| 隆化县| 来安县| 车致| 耒阳市| 通化市| 徐州市| 微博| 原平市| 揭阳市| 五台县| 巴彦县| 石楼县| 惠东县| 保靖县| 香河县| 克什克腾旗| 日喀则市| 海南省| 丰都县| 新余市| 湘潭市| 马山县| 大化| 石柱| 大连市| 高台县| 丹东市| 巴楚县|