1、優勢:松耦合
易於擴充套件 ,消費者可以擴充套件多個,分布在不同的伺服器中
2、lpush rpop
3、brpop命令和rpop相似,唯一區別:當列表中沒有元素時,brpop命令會一直阻塞住鏈結,知道有新元素加入
4、brpop key timeout
timeout 等於0 表示不限制等待時間(單位是秒),如果沒有元素會一直阻塞下去。如:brpop list 0
5、brpop key 1
阻塞1秒,取出資料。返回值是乙個陣列,第乙個元素是鍵名,第二個元素是 值value。如果沒有資料,返回nil
127.0.0.1:6379> brpop list 01) "list"2) "13"(11.46s)127.0.0.1:6379> brpop list 2(nil)
6、優先順序佇列 blpop queue:1 queue2:2 queue3:3 0
如果都有值,優先取出 queue2佇列的值
7、訂閱subcribe channel channelno .處於訂閱狀態的客戶端只能使用四中命令:subscribe/unsubscribe/psubscribe/punsubscribe
reading messages... (press ctrl-c to quit)1) "subscribe"
2) "channel"3) (integer) 1
可以同時訂閱多個訊息頻道127.0.0.1:6379> subscribe channel1 channel2 channel3reading messages... (press ctrl-c to quit)1) "subscribe"2) "channel1"3) (integer) 11) "subscribe"2) "channel2"3) (integer) 21) "subscribe"2) "channel3"3) (integer) 3
8、發布訊息publish channel channelno message .返回值表示收到此訊息的客戶端數量
也可以同時取消多個訊息頻道
127.0.0.1:6379> publish channel hello
(integer) 1
9、psubscribe channel1.?* 訂閱指定規則的訊息。支援glob風格的萬用字元格式
如果a客戶端訂閱了 psubscribe 1.1 和 psubscribe 1.?* 的訊息,
這時b客戶端向 channel1.1發布訊息,a客戶端會收到 2 條訊息。
10、punsubscribe * 無法退訂 channel.* 規則,而是必須使用punsubscribe channel.*退訂
11、管道
客戶端和redis是使用tcp協議鏈結的。在向redis傳送命令和返回執行結果時,都需要經過網路傳輸。一去一反稱為往返延時。
如果要執行多個命令而不相互依賴返回值,可以使用管道技術。一次性向redis傳送多條命令,即把這組命令一起通過管道命令發出。管道可以減少客戶端與redis的通訊次數,達到降低往返延遲的目的。
類似於批處理。
Redis基礎命令
一 基本操作 1 寫入乙個key set bar 1 返回ok即 成功 2 得到乙個key的值 get bar 3 獲取所有的key keys 獲取所有的鍵 4 判斷乙個鍵是否存在 exists bar 如果返回1即說明存在,返回0說明不存在 5 刪除鍵 del bar 返回值是刪除的鍵的個數 6 ...
redis基礎命令
1.增加一條記錄 redis 127.0.0.1 6379 set key1 hello 2.讀取一條記錄 get key1 hello 3.讓數字自增 set key2 1 ok incr key2 integer 2 get key2 2 4.增加一條列表記錄 lpush key3 first ...
Redis基礎命令
筆者最初接觸redis是因為了解了一些nosql方面的知識,覺得nosql是乙個很有意思的方面。像其中的mongodb,redis等等。當初也沒有深入的去了解redis,直到自己前段時間在寫乙個web專案的時候需要用到快取來進行效能優化我才仔細的來學習redis。下面我就來說說我自己在學習redis...