在針對Redis進行進一步瞭解以前,咱們首先務必須要了解一下Redis的配置文件「redis.conf」,該文件通常位於Redis的安裝目錄。例如:使用的是Ubuntu安裝的Redis,我能夠在/etc/redis/redis.conf找到該文件。redis.conf 配置項說明以下所示redis
http://www.runoob.com/redis/redis-conf.htmlsegmentfault
對於Redis對於數據的存儲保障,能夠分爲兩種方式來存儲Redis數據,一種是使用「快照」,另外一種是「只追加文件」方式。緩存
咱們能夠在Redis.conf找到以下段落安全
# save "" save 900 1 save 300 10 save 60 10000
能夠看到,Redis的配置中已經默認替咱們開啓了快照模式的數據存儲,根據以上命令,該存儲規則是「若是在900秒內存儲1條記錄,進行快照;若是知足300秒內存儲10條記錄,進行快照;若是知足60秒內存儲10000條記錄,進行快照」,咱們還能夠針對快照存儲模式進一步的進行配置。服務器
# The filename where to dump the DB dbfilename dump.rdb
咱們能夠在redis.conf配置自定義快照存儲的路徑,以便咱們進行數據恢復。app
若是須要恢復數據,只需將備份文件 (dump.rdb) 移動到 redis 安裝目錄並啓動服務便可,若是不知道Redis的安裝目錄能夠在Redis客戶端裏面使用下面命令得到。ui
CONFIG GET dir
咱們能夠在配置文件中找到appendonly no
,將no改爲yes;表明開啓AOF數據存儲方式。一樣,咱們能夠自定義備份文件存儲的位置。操作系統
appendfilename "appendonly.aof"
針對AOF的數據備份方式,有三種模式,分別是;命令行
咱們能夠在配置文件中,找到appendfsync everysec
修改適合本身的選擇。
更多關於Redis數據的存儲能夠訪問:http://www.javashuo.com/article/p-aghpycuq-kd.html
對於Redis的事務其實和咱們在編寫JDBC的應用程序時所使用的事務是基本一致的,有一點區別是,當Redis的事務中有一條命令發生異常時,並不會對數據進行回滾;而JDBC會針對事務的回滾。也是說Redis事務並無維持其原子性。
命令 | 詳解 |
---|---|
MULTI | 標記一個事務塊的開始。 |
EXEC | 執行全部事務塊內的命令。 |
DISCARD | 取消事務,放棄執行事務塊內的全部命令。 |
UNWATCH | 取消 WATCH 命令對全部 key 的監視。 |
Redis 發佈訂閱(pub/sub)是一種消息通訊模式:發送者(pub)發送消息,訂閱者(sub)接收消息。
發佈
訂閱
命令 | 詳解 |
---|---|
PSUBSCRIBE pattern [pattern ...] | 訂閱一個或多個符合給定模式的頻道。 |
PUBSUB subcommand [argument [argument ...]] | 查看訂閱與發佈系統狀態。 |
PUBLISH channel message | 將信息發送到指定的頻道。 |
PUNSUBSCRIBE [pattern [pattern ...]] | 退訂全部給定模式的頻道。 |
SUBSCRIBE channel [channel ...] | 訂閱給定的一個或多個頻道的信息。 |
UNSUBSCRIBE [channel [channel ...]] | 指退訂給定的頻道。 |
咱們能夠在Redis的配置文件中設置Redis密碼,在客戶端進行訪問Redis的時候會進行密碼驗證;
在Redis命令行中輸入命令 CONFIG get requirepass
咱們能夠在redis.conf中找到# requirepass foobared
將註釋去掉,設置成本身的密碼便可。