lpush key value
作用: 把值插入到鏈表頭部
lpush word A
lrpush key value
作用: 把值插入到鏈表尾部
rpush word Z
llpop key
作用: 返回并刪除鏈表頭部元素
lpop word
lrpop key
作用: 返回并刪除鏈表尾元素
rpop word
lrange key start stop
作用: 返回鏈表中[start ,stop]中的元素
規(guī)律: 左數(shù)從0開始,右數(shù)從-1開始
lrange word 0 1
小技巧 查看鏈表所有元素
lrange word 0 -1
lrem key count value
作用: 從key鏈表中刪除 value值
注: 刪除count的絕對值個value后結(jié)束
count>0 從表頭刪除
count<0 從表尾刪除
lrem word 2 a
ltrim key start stop
作用: 剪切key對應(yīng)的鏈接,切[start,stop]一段,并把該段重新賦給key
ltrim word 1 2
lindex key index
作用: 返回index索引上的值,
lindex word 2
llen key
作用:計算鏈接表的元素個數(shù)
llen word
linsert key after|before search value
作用: 在key鏈表中尋找’search’,并在search值之前|之后,.插入value
注: 一旦找到一個search后,命令就結(jié)束了,因此不會插入多個value
linsert word before b a
lrpoplpush source dest
作用: 把source的尾部拿出,放在dest的頭部,
并返回 該單元值
場景: task + bak 雙鏈表完成安全隊列
業(yè)務(wù)邏輯:
1.rpoplpush task bak
2:接收返回值,并做業(yè)務(wù)處理
3:如果成功,rpop bak 清除任務(wù). 如不成功,下次從bak表里取任務(wù)
lbrpop /blpop key timeout
作用:等待彈出key的尾/頭元素
Timeout為等待超時時間,如果timeout為0,則一直等待
場景: 長輪詢Ajax,在線聊天時,能夠用到
brpop word 0