redis之基础知识(十一)

1redis默认有16个数据库,

cd redis

cd src

vim  redis.conf

 默认使用的是第0个数据库,可以使用select 进行切换数据库

 设置值后通过dbsize查看数据库的大小发现数据库的大小发生了变化,但是,这只是针对于3号数据库,切换到其他数据库空间同样是0

 

keys *   查看所有的key  

 FLUSHAll 清除全部数据库

 flushdb  清除当前数据库

 

 redis是单线程的

redis是很快的,官方表示,redis是基于内存操作的,cpu不是redis的性能瓶颈,redis的性能瓶颈是根据机器的内存和网络带宽,既然使用单线程来实现,所以就使用单线程。

redis是C语言写的,官方提供的数据是100000的QPS,完全不比同样使用key-value的Mereched差

Redis为什么单线程真么快?

1  误区1  高性能的服务器一定是使用多线程的

2 误区2  多线程(cpu上下文切换)的效率一定比单线程高

cpu的效率(上下文切换耗时1500ns~2000ns)>内存效率>硬盘效率

3核心:redis是将所有的数据全部放在内存中,所有使用单线程去操作效率最高,cpu上下文切换,是需要耗费时间,对于内存来说,没有上下文切换,多次读写都是在一个cpu上,这个就是最佳的方案。

原文地址:https://www.cnblogs.com/zhushilai/p/13667713.html