redis學習教程三《發送訂閱、事務、連接》
阿新 • • 發佈:2017-05-19
微軟雅黑 pin 發布者 tail 順序 mil visitor 模式 b-
Redis發布訂閱(pub/sub)是一種消息通信模式:發送者(pub)發送消息,訂閱者(sub)接收消息。Redis 發布訂閱(pub/sub)實現了消
息系統,發送者(在redis術語中稱為發布者)在接收者(訂閱者)接收消息時發送消息。傳送消息的鏈路稱為信道。
Shell
Shell
二:事務
Redis事務允許在單個步驟中執行一組命令。以下是事務的兩個屬性:
redis學習教程三《發送訂閱、事務、連接》
一:發送訂閱Redis發布訂閱(pub/sub)是一種消息通信模式:發送者(pub)發送消息,訂閱者(sub)接收消息。Redis 發布訂閱(pub/sub)實現了消
息系統,發送者(在redis術語中稱為發布者)在接收者(訂閱者)接收消息時發送消息。傳送消息的鏈路稱為信道。
示例
以下示例說明了發布用戶概念的工作原理。 在以下示例中,一個客戶端訂閱名為“redisChat
”的信道。
redis 127.0.0.1:6379> SUBSCRIBE redisChat
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "redisChat"
3) (integer) 1
現在,兩個客戶端在名稱為“redisChat
”的相同信道上發布消息,並且上述訂閱的客戶端接收消息。
redis 127.0.0.1:6379> PUBLISH redisChat "Redis is a great caching technique"
(integer) 1
redis 127.0.0.1:6379> PUBLISH redisChat "Learn redis by yiibai"
(integer) 1
1) "message"
2) "redisChat"
3) "Redis is a great caching technique"
1) "message"
2) "redisChat"
3) "Learn redis by yiibai"
Redis發布訂閱命令
下表列出了與Redis發布訂閱相關的一些基本命令。
序號 | 命令 | 說明 |
---|---|---|
1 | PSUBSCRIBE pattern [pattern …] | 訂閱一個或多個符合給定模式的頻道。 |
2 | PUBSUB subcommand [argument [argument …]] | 查看訂閱與發布系統狀態。 |
3 | PUBLISH channel message | 將信息發送到指定的頻道。 |
4 | PUNSUBSCRIBE [pattern [pattern …]] | 退訂所有給定模式的頻道。 |
5 | SUBSCRIBE channel [channel …] | 訂閱給定的一個或多個頻道的信息。 |
6 | UNSUBSCRIBE [channel [channel …]] | 退訂給定的頻道。 |
二:事務
Redis事務允許在單個步驟中執行一組命令。以下是事務的兩個屬性:
- 事務中的所有命令作為單個隔離操作並按順序執行。不可以在執行Redis事務的中間向另一個客戶端發出的請求。
- Redis事務也是原子的。原子意味著要麽處理所有命令,要麽都不處理。
語法示例
Redis事務由命令MULTI
命令啟動,然後需要傳遞一個應該在事務中執行的命令列表,然後整個事務由EXEC
命令執行。
示例
以下示例說明了如何啟動和執行Redis事務。
redis 127.0.0.1:6379> MULTI
OK
redis 127.0.0.1:6379> SET mykey "redis"
QUEUED
redis 127.0.0.1:6379> GET mykey
QUEUED
redis 127.0.0.1:6379> INCR visitors
QUEUED
redis 127.0.0.1:6379> EXEC
1) OK
2) "redis"
3) (integer) 1
Shell
Redis事務命令
下表列出了與Redis事務相關的一些基本命令。
序號 | 命令 | 說明 |
---|---|---|
1 | DISCARD | 丟棄在MULTI之後發出的所有命令 |
2 | EXEC | 執行MULTI後發出的所有命令 |
3 | MULTI | 標記事務塊的開始 |
4 | UNWATCH | 取消 WATCH 命令對所有 key 的監視。 |
5 | WATCH key [key …] | 監視給定的鍵以確定MULTI / EXEC塊的執行 |
三:Redis連接
Redis中的連接命令基本上是用於管理與Redis服務器的客戶端連接。
示例
以下示例說明客戶端如何向Redis服務器驗證自身,並檢查服務器是否正在運行。
redis 127.0.0.1:6379> AUTH "password"
OK
redis 127.0.0.1:6379> PING
PONG
Shell
Redis連接命令
下表列出了與Redis連接相關的一些基本命令。
序號 | 命令 | 說明 |
---|---|---|
1 | AUTH password | 使用給定的密碼驗證服務器 |
2 | ECHO message | 打印給定的字符串信息 |
3 | PING | 檢查服務器是否正在運行 |
4 | QUIT | 關閉當前連接 |
5 | SELECT index | 更改當前連接的所選數據庫 |
redis學習教程三《發送訂閱、事務、連接》