Redis基础知识

1.由于Redis是用C语言写的,所以在安装Redis之前要先具备C语言环境

    先安装gcc环境,用yum -y install gcc-c++,安装完可以使用gcc -v来查看版本号,然后使用make编译一下,最后执行一下make install就可以了

2.redis的默认安装路径是/usr/local/bin

3.redis的默认端口是6379

可以在redis的配置文件中修改,可以使用netstat -ntlp grep 6379命令来擦好看端口是否在使用中,用ps -ef | grep redis来查看进程是否开启

4.redis默认有16个数据库,这个在redis的配置文件中有

 可以使用select index 来选择使用哪个数据库,用dbsize来查看当前数据库的大小,清空当前数据库:flushdb,清空所有数据库:flushall

5.设置某个key的失效时间:expire key time,单位是秒

6.查看某个key的类型:type key

7. redis是单线程的

因为redis是基于内存操作,所以redis的瓶颈不是CPU,而是机器的内存和网络带宽,为什么redis是单线程的还那么快呐,因为redis将所有的数据都放在内存中,使用多线程去实现redis的话,CPU进行线程之间的切换的时候,会有上下文切换,这些都是比较耗时的操作,对于内存系统来说,没有上下文切换效率才是最高的!

8. redis的事务不具有原子性

redis的单条命令具有原子性,但是事务不具有原子性;reids事务的本质就是一些命令的集合,一个事务中的所有命令都会被序列化,在事务执行过程中,会按照顺序执行
redis的事务执行流程:一般会先监听
(1)监听某个key,相当于使用一个乐观锁
watch key
(2)开启事务
multi
(3) 输入一些需要执行的命令
(4)执行事务
exec
如果需要取消事务的话,用:discard命令

9.springboot继承redis之后,原来使用的jedis被替换为了lettuce

jedis:采用的是直连,多个线程操作的话,是不安全的,如果想要避免不安全的事情发生,可以使用jedis pool连接池!jedis更像BIO(阻塞式IO)模式
lettuce:采用的是netty,实例可以在多个线程进行共享,不存在线程不安全的情况,可以减少线程数量,更像是NIO(非阻塞式IO)模式
要导入的依赖:

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
</dependencies>

下一篇讲一下redis的配置文件,持久化等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值