Redis

目录

1.数据库类型

(1)关系数据库(SQL)

(2)非关系数据库(NoSQL)

2.缓存数据库与持久数据库的搭配使用

3.Redis下载、安装和测试

(1)下载地址

(2)安装

(3)测试

(4)关闭服务器

4.Redis的Value的数据类型

(1)字符串类型

(2)List类型

(3)Set类型

(4)SortedSet类型

(5)Hash类型

5.key的常用命令

6.redis的配置文件

7.redis的内存的持久化


1.数据库类型

(1)关系数据库(SQL)

特点:

  • 使用SQL语句进行操作
  • 数据存在磁盘上

典型:

  • mysql
  • oracle
  • sqlsever(微软的)
  • sqlite  (文件数据库,做嵌入式的时候经常使用,轻巧比较小)

(2)非关系数据库(NoSQL)

特点:

  • 不依赖于SQL语句
  • 数据存储在内存中
  • 数据也可以进行持久化,将数据保存到磁盘
  • 数据都是以键值对的方式进行存储
  •         Key值是字符串(是数字也会被转换为字符串)

典型:

  • Redis
  • Memcathed
  • MongoDB

2.缓存数据库与持久数据库的搭配使用

用户第一次连应用服务器请求数据:在应用服务器的缓存中没有相应数据——>读数据库(数据库中存放了全部的数据)——>应用服务器把数据给到用户,同时判断数据是否为用户经常访问的数据,是的话就存到Redis中

用户第二次请求就不用再去读数据库,而是从Redis中读取,因为Redis的数据存储在内存中,大大提高了访问的效率

Redis存放用户经常访问的数据

Redis是单线程工作的,但它为什么能实现高并发?

因为它存储在内存中,操作速度非常快,内部维护了一个队列,一个操作一个操作处理很快

3.Redis下载、安装和测试

(1)下载地址

http://redis.cn/download.html

(2)安装

(3)测试

默认阻塞,再开一个终端

(4)关闭服务器

在客户端敲shutdown(有条件限制,必须通过客户端连接到了服务器上面)

4.Redis的Value的数据类型

(1)字符串类型

(2)List类型

 

既可以按照队列进行操作,也可以按照栈来操作

队列:

  • rpush     
  •  lpop

栈:

  • lpush 
  • lpop
  • rpush
  • rpop

(3)Set类型

集合没有顺序,但元素唯一

(4)SortedSet类型

集合的每一个元素的前面都有一个分数,SortedSet会根据分数进行排序

(5)Hash类型

5.key的常用命令

6.redis的配置文件

配置文件在安装包中

绑定的话只接收绑定IP客户端的数据

远程客户端可以访问

端口

是否为守护进程

log日志是否需要写到文件中,这里写为空是重定向到/dev/null扔掉

redis内部帮我们维护了16个数据库

 

redis以守护进程运行时,会将pid存放在/var/run/redis_6379.pid中

客户端连接超时时间

7.redis的内存的持久化

(1)rdb形式

特点:

  • 以快照的方式对数据做一个拷贝
  • 存储的是内存中的数据,以键值对的形式存储
  • 按照某种频率做数据存储
  •       这个频率在配置文件中

优点:

  • 数据恢复要快一些

缺点:

  • 存储的频率特别高的话,效率低;
  • 存储的频率低的话,同步不及时;

配置:

(2)Aof形式

特点:

  • 存储的都是命令

优点:

  • 数据存放到磁盘的效率比较高
  • 占用磁盘空间小

缺点:

  • 数据恢复用的时间比较长,因为命令比较多的话,用命令生成数据比直接读取数据快

配置:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值