Redis 小白指南(三)- 事務、Watch 命令、過期、消息通知、管道、優化記憶體空間 簡介 目錄 事務 Watch 命令 過期時間 排序 消息通知 管道 優化記憶體空間 事務 事務是一組命令的集合,事務和命令一樣都是 Redis 的最小執行單位。即一個事務中的命令,要麼都執行,要麼都不執行。可以思 ...
Redis 小白指南(三)- 事務、過期、消息通知、管道、優化記憶體空間
簡介
目錄
- 事務
- 過期時間
- 消息通知
- 管道
- 優化記憶體空間
事務
事務是一組命令的集合,事務和命令一樣都是 Redis 的最小執行單位。即一個事務中的命令,要麼都執行,要麼都不執行。可以思考關係型資料庫中的事務特性 ACID:
(1)原子性(Atomicity):在事務結束時,其中包含的更新處理要麼全部執行,要麼完全不執行。
(2)一致性(Consistency):事務中包含的處理,要滿足資料庫提前設置的約束,也稱完整性。
(3)隔離性(lsolation):保證不同事務之前互不幹擾的特性。
(4)持久性(Durability):事務一旦結束,DBMS 會保證該時點的數據狀態得以保存的特性,也稱耐久性。
Redis 可以保證一個事務中的命令依次執行而不會被其它命令插入。如:Client A 需要執行多條指令,同時 Client B 也執行多條指令,因為網路傳輸或者時間等因素造成指令發送到 Redis 伺服器的順序有先後,使用事務就可以避免這種情況。
遺憾的是,Redis 不支持回滾。
過期時間
1.設置過期時間意味著過一段時間就會刪除 redis 中指定的數據。
2.應用場景:限時優惠活動、緩存、學校成績排名定期刷新。
3.命令:
(1)EXPIRE:
EXPIRE key seconds //seconds 參數表示鍵的過期時間,單位是秒
(2)TTL:查看剩餘時間
TTL key
消息通知
1.就是常說的消息隊列,一邊是生產者(producer),一邊是消費者(consumer)。
2.特點:
松耦合:開發團隊可以分別使用不同的開發語言,雙方約定好數據的格式即可。
易於擴展:消費者可以有多個,部署在多態伺服器上,輕鬆減輕單台伺服器的壓力。
管道
優化記憶體空間
雖然在現在這個年代,記憶體條的價格已經非常便宜,但對於硬碟來說,價格依然非常高昂,進行記憶體空間成本的控制和資源的有效利用也是一個迫切的主題。
1.精簡鍵名和鍵值。不過需要自己把握精簡的尺度,因為要基於可讀性的基礎上進行精簡,過於精簡不易於維護也容易造成命名衝突。
2.指定合適的編碼格式。
3.選擇合適的數據類型進行存儲。
4.定時清理(刪除)無效的緩存數據,或者設置自動過期時間。
5.配置 Redis 可用的最大空間大小,保證程式的穩定利用。
系列
《Redis 小白指南(三)- 事務、Watch 命令、過期、消息通知、管道、優化記憶體空間》
【博主】反骨仔
【原文】http://www.cnblogs.com/liqingwen/p/6920680.html
【參考】《Redis 入門指南》