Redis的基础知识
Posted 杀手不太冷!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis的基础知识相关的知识,希望对你有一定的参考价值。
文章目录
Redis的基础知识
一些基本命令
redis默认有16个数据库,在redis.conf配置文件中可以看到,如下图:
默认使用的是第0个,可以使用select切换数据库!如下图:
set命令可以存储键格式set key value,get命令可以取出指定的键对应的值格式get key,如下图:
mset命令可以一次性的设置多个键值对,如下图:
get命令可以获取指定的key所对应的值,如下图:
mget命令可以批量的获取key对应的值,如下图:
getset key 新值:此命令可以用来先获取指定key的值,然后再更新这个key的值,如下图:
dbsize命令可以查看当前数据库的大小,也即是当前数据库里面存放了多少条数据,如下图:
keys * 命令可以查看所有的key,如下图:
flushdb命令:清空当前数据库,flushall命令:清空所有数据库,如下图:
exists key [key2…]命令判断是否有指定的键存在,如下图:
del key [key2…]命令删除指定的键,如下图:
move key db命令把当前数据库中指定的键移动到指定的数据库中,如下图:
expire key 时间单位秒 和 tll key 这两个命令的使用,如下图:
pexpire key 时间单位是毫秒 和 ptll key 这两个命令的使用和上面的expire和tll是相同的,只不过这里的单位是毫秒。
type key此命令可以输出指定key的类型,如下图:
在哪里可以查看redis的所有命令?reids的官网,如下图:
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的基础知识的主要内容,如果未能解决你的问题,请参考以下文章