Redis默认有16个数据库

默认使用的是第0个数据库

可以通过 select进行切换数据库

切换数据库和查看DB大小

127.0.0.1:6379> select 3 #切换数据库
OK
127.0.0.1:6379[3]> dbsize #查看DB大小
(integer) 0
127.0.0.1:6379[3]> 

查询数据库所有的key

127.0.0.1:6379[3]> keys *
1) "name"

清空当前数据库 flushdb

127.0.0.1:6379[3]> flushdb
OK
127.0.0.1:6379[3]> keys *
(empty array)

清除全部数据库内容 flushall

127.0.0.1:6379[3]> select 0
OK
127.0.0.1:6379> keys *
1) "name"
127.0.0.1:6379> get name
"luoyufeng"
127.0.0.1:6379> select 3
OK
127.0.0.1:6379[3]> flushall
OK
127.0.0.1:6379[3]> select 0
OK
127.0.0.1:6379> keys *
(empty array)

注意:Redis是 单线程

redis是基于内存操作,cpu不是redis性能瓶颈,redis的瓶颈是根据机器的内存和网络带宽,所以就使用了单线程。

redis是C语言写的,官方提供数据为10w+的QPS,完全不比同样使用key-value的Memecache差

Redis为什么单线程还那么快?

误区:

1.高性能服务器一定是多线程

2.多线程(CPU会上下文切换)一定比单线程效率高

核心:

redis是将所有数据放在全部放在内存中的,所以说使用单线程去操作效率就是最高的,多线程(CPU会上下文切换 : 耗时的操作),对于内存系统来说,如果没有上下文切换效率就是最高的!多次读写都是在CPU上的,在内存情况下就是最佳方案!

最后修改:2021 年 03 月 03 日 09 : 21 PM