1.测试redis服务性能
redis-benchmark
2. Redis是基于内存操作,CPU不是Redis性能瓶颈,而是根据机器的内存和网络带宽
3. 高性能的服务器并不是多线程的,因为多线程(CPU上下文切换)会耗时,但是效率会比单线程的要高
4. 读写速度:CPU>内存>硬盘
5. Redis将所有的数据放在内存中,所以单线程操作效率是最高的,多线程操作对于内存系统来说会有CPU上下文切换耗时
6. 多路复用是指使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)
串行 vs 多线程+锁(memcached) vs 单线程+多路IO复用(Redis)
2.查看redis服务是否正常运行
ping 正常返回 pong
3.查看redis服务的统计信息
info 查看redis服务的所有统计信息
info 【信息端】 查看redis服务器指定的统计信息 如 info Replication
4.redis的数据库实例
理解:作用类似于mysql的数据库实例,redis中数据库实例只能由redis服务来创建和维护,开发人员不能修改和自行创建数据库实例;默认情况下,redis会自动创建16个数据库实例,并且给这些数据库实例进行编号,从0开始到15结束,使用时通过编号来使用数据库;可以通过配置文件,指定redis自动创建的数据库个数;redis每个数据库实例本身占用的存储空间很少,所以也不造成存储空间的浪费。
默认情况下,redis客户端连接的是编号0的数据库实例,可以使用select index[编号] 切换数据库实例 java代码也可以
5.其他
查看当前数据库实例中的key数量
dbsize
查看当前数据库实例中的所有key
keys *
清空数据库实例
flushdb
清空所有数据库的实例
flushall
查看redis所有的配置信息
config get *
查看redis指定的配置信息
config get parameter【指定的】