• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

Redis的基础知识

互联网 diligentman 1周前 (02-18) 7次浏览

文章目录

  • Redis的基础知识
    • 一些基本命令
    • Redis的执行效率为什么那么快?以及为什么Redis是单线程的?

Redis的基础知识

一些基本命令

redis默认有16个数据库,在redis.conf配置文件中可以看到,如下图:

Redis的基础知识

默认使用的是第0个,可以使用select切换数据库!如下图:

Redis的基础知识

set命令可以存储键格式set key value,get命令可以取出指定的键对应的值格式get key,如下图:

Redis的基础知识

dbsize命令可以查看当前数据库的大小,也即是当前数据库里面存放了多少条数据,如下图:

Redis的基础知识

keys * 命令可以查看所有的key,如下图:

Redis的基础知识

flushdb命令:清空当前数据库,flushall命令:清空所有数据库,如下图:

Redis的基础知识

exists key [key2…]命令判断是否有指定的键存在,如下图:

Redis的基础知识

Redis的执行效率为什么那么快?以及为什么Redis是单线程的?

Redis是单线程的!Redis是用C语言写的!关于redis的性能,官方网站也有,普通笔记本轻松处理每秒几十万的请求。

Redis为什么是单线程的?因为Redis是基于内存的操作,CPU不是Redis的瓶颈,Redis的瓶颈最有可能是机器内存的大小或者网络带宽。既然单线程容易实现,而且CPU不会成为瓶颈,那就顺理成章地采用单线程的方案了。

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

1.redis是基于内存的,内存的读写速度非常快;

2.redis是单线程的,省去了很多CPU上下文切换线程的时间;

3.多线程并不一定比单线程快;

核心:redis将所有的数据都存放到了内存中,CPU不需要切换线程,redis的操作效率的快慢与CPU没关系,与内存大小有关系,单线程CPU不必切换上下文,而多线程CPU需要切换上下文,多线程CPU切换上下文还比较耗时,所以说redis就自然而然的使用了单线程。


程序员灯塔
转载请注明原文链接:Redis的基础知识
喜欢 (0)