string

 

 

 重点!!:

bitmap:  默认一个字节的大小,根据命令来进行扩容

  bitcount:计算bitmap里面为1的个数

  bitop:将两个key进行或运算得出结果给新的key赋值

  bitpos:在数组里面找到范围内的第一个为0或者1的位置,返回位置

  getbit:得到指定位置的数值,是0还是1

  setbit:给指定位置赋值

setnx:在高并发下使用的命令,只有成功设置值返回1,失败返回0(可以并发的去更新,然后只让一个请求去做更新成功之后的操作)

psetex setex:设置带过期时间的key,p代表毫秒为单位,不加p代表秒为单位

 

 

List

 

 重点!!

 rpush  和 rpushx的区别?

多了一个x,代表exist,是否存在,rpushx向一个已经存在的list进行添加,如果不存在返回0

 

lrem:删除count个value的值

 

 

Set

重点!! 

大部分都是集合的寻常操作

sdiffstore:多个集合的差集保存在新的key中

sinterstore:多个集合的交集保存在新的key中

sunionstore:多个集合的并集保存在新的key中

 

Sored_set

 重点!!

与set差不多,区别在于底层主要是跳表实现,保证有序,所有有一些特别的指令,比如zincrby等

 

 

 

 

Hash

 

 重点!!

底层主要数据结构hash实现,hvals 根据特殊的匹配模式搜出符合条件的key

 

 

 

PubSub发布订阅

 重点!!

类似消息队列的功能

pubsub:查看订阅的状态,可以加参数来查看不同的

  channels:查看当前活动的频道有哪些 

  numsub [channel]:查看订阅给定的客户端的个数

  numpat :查看当前服务器被订阅模式的数量

 subscribe:订阅频道

psubscribe:订阅模式

publish:给频道发送消息

Tracations 事务

 重点!!

multi:事务开头     exec:事务提交,会看是否有REDIS_DIRTY_CAS标志,如果有的话代表安全性被破坏,会拒绝执行事务

watch:监视key是否被修改, 别的key执行set等修改命令会调用一个查看被监视的key是否被修改的函数,如果被修改会打开客户端的REDIS_DIRTY_CAS标志代表安全性已经被破坏

discard:取消事务

 

 

 

 Connection 链接

 重点!!

auth:检测密码是否和配置文件中的密码一样

echo:打印字符串

ping:用来测试连接是否正常,如果正常服务器会返回pong

 

 

Server 服务器

 重点!!

client list:查看客户端列表,能够看到客户端连接的地址端口

client kill:关闭一个连接,然后redis会重新建立一个连接,一般用于连接出故障的情况,手动进行迁移

bgrewriteaof:aof重写,重写主要是对当前数据库状态来弄命令,写在新的AOF文件,重写期间接收客户端命令,存在AOF重写缓冲区,重写成功后放入,将AOF重写缓冲区的命令也放入文件中

client pause:阻塞客户端命令一段时间,毫秒单位

 

config : redis.conf  配置文件相关命令

config set : 将配置项的值修改,但是不会被记录到配置文件当中,下次启动redis依然是老配置

config get: 得到配置项的值

config rewrite:将当前配置记录到redis.conf中去

config resetstat:重置info里面记录的一些信息

 

debug object : 查看key的一些信息

lastsave:最近一次持久化的时间,返回一个时间戳 

dbsize:计算当前数据库的key的数量

 monitor:实时打印服务器接收到的命令,用于调试

role :查看当前服务器是什么角色  master slave sentinel

sync ,fsync:主从复制时候使用,一个是全量复制,一个是按位移复制

Lua脚本

 

 

 

Hyperloglog 概率计数器

 重点!!

主要用于计算基数,pfcount能够计算出基数集的长度,也就是不同的个数有多少个

 

 

Generic 通用命令

 重点!!

dump:序列化一个key的值,返回序列化后的值

migrate:迁移key 从当前实例数据库到目标实例数据库  (内部实现,先dump序列化key,然后目标数据库再使用restore反序列化)

move:当前数据库移动到目标数据库

object: 查看key的信息    

  refcount : 查看引用key的val的对象个数,redis里面的共享内存机制,0-9999最开始都会被申请引用,所以自己如果set一个key的val数值是0-9999的话,返回值应该是2  

  encoding : 查看内部的实现结构

  idletime :查看空转时间

persist :删除一个key的过期时间

type : 查看是哪种对象