Redis Basic Notes
Redis Commands
Basic Commands
SET key value.SET key value EX seconds: set key with expire time.SET key value NX: only set key not exists.DEL key.GET key.EXISTS key.KEYS pattern:KEYS *message*.EXPIRE key seconds.TTL key:-1for no expire time.FLUSHALL.FLUSHDB.
List Commands
LPUSH key element: add head value.RPUSH key element: add tail value.LPOP key [count]: remove and return head value.RPOP key [count]: remove and return tail value.LRANGE key start stop: get elements.LRANGE key 0 -1: get all elements.LTRIM key start stop: trim list to range.LLEN key: get length.
Set Commands
SADD key member: add value.SREM key member: remove value.SPOP key [count]: remove and return random value.SMEMBERS key: get all values.SRANDMEMBER key [count]: get random value.SISMEMBER key member: check value.SCARD key: get length.
SortedSet Commands
ZADD key score member: add value with score.ZREM key member: remove value.ZSCORE key member: get score.ZRANK key member: get rank.ZREVRANK key member: get reverse rank.ZRANGE key start stop: get values.ZRANGE key start stop WITHSCORES: get values with scores.ZCARD key: get length.
Hash Commands
HSET key field value: set field and value.HDEL key field: delete field.HGET key field: get field value.HKEYS key: get all fields.HVALS key: get all values.HGETALL key: get all fields and values.HEXISTS key field: check field.HLEN key: get length.
Pub/Sub Commands
SUBSCRIBE channel: subscribe channel.PUBLISH channel message: publish message to channel.UNSUBSCRIBE channel: unsubscribe channel.
Stream Commands
XADD key id field value: add value.XDEL key id: delete value.XRANGE key start end: get values.XRANGE key - +: get all values.XREAD COUNT count BLOCK milliseconds STREAMS key id: read values.XLEN key: get length.
Stream group:
XGROUP CREATE key group id: create group.XGROUP CREATECONSUMER key group consumer: create consumer.XREADGROUP GROUP group consumer COUNT count BLOCK milliseconds STREAMS key id: read values.XINFO GROUPS key: get groups info.
Geospatial Commands
GEOADD key longitude latitude member: add value.GEOPOS key member: get value.GEODIST key member1 member2: get distance.GEOSEARCH key FROMMEMBER member BYRADIUS radius: search by radius.GEORADIUS key longitude latitude radius: search by radius.GEORADIUSBYMEMBER key member radius: search by radius.
HyperLogLog Commands
使用随机数来统计数量 (基数), 牺牲精度换取性能:
PFADD key element: add value.PFCOUNT key: get count.PFMERGE destkey [sourcekey [sourcekey ...]]: merge.
Bitmap Commands
SETBIT key offset value: set value.GETBIT key offset: get value.BITCOUNT key: get count.BITPOS key bit: get first position.
> SET mykey "\xff\xf0\x00"
OK
> BITPOS mykey 0
(integer) 12
Bitfield Commands
BITFIELD key SET type offset value: set value.BITFIELD key GET type offset: get value.BITFIELD key INCRBY type offset increment: increment value.
BITFIELD mystring SET i8 #0 100 SET i8 #1 200
BITFIELD mystring INCRBY i8 #0 10
Transaction Commands
MULTI: start transaction.EXEC: execute transaction.DISCARD: discard transaction.WATCH key: watch key.UNWATCH: unwatch key.
Replication Commands
主从复制:
REPLICAOF NO ONE: master instance.REPLICAOF host port: slave instance.INFO: get info.
> REPLICAOF NO ONE
"OK"
> REPLICAOF 127.0.0.1 6799
"OK"
Sentinel Commands
> ROLE
1) "sentinel"
2) 1) "resque-master"
   2) "html-fragments-master"
   3) "stats-master"
   4) "metadata-master"