redis学习(一) redis简介

1. redis的存储结构

redis是remote dictionary server(远程字典服务器的缩写),是以字典结构存储数据(或称为映射,关联数组的数据结构),并允许其他应用通过tcp协议读写字典中的内容。redis中支持的键值数据类型:

1>字符串类型

2> 散列类型

3> 列表类型

4> 集合类型

5> 有序集合类型

这种字典形式的存储结构和常见的mysql等关系型数据库的二维表形式的存储结构有很大的区别。

举个例子来说,如果我们在程序中使用了post变量存储了一篇文章的数据(标题,正文,阅读量和标签):

post['title'] = "hello world!"

post['content'] = 'Blablablabla...';

post['views'] = 0

post['tags'] = ["PHP",'Ruby','Node.js']

如果使用MySQL,就会创建两张表,一张表存放的是标题,内容, 访问量等信息,一张表存放的是标签信息,在访问的时候,

将两个表进行连接查询。这样并不是很直观

但是使用redis字典结构的存储方式是的开发者能够将程序中的数据直接映射到redis中,使用redis的另一个优势在于

对于不同的数据类型的访问提供了很便捷的访问方式。

2.  内存存储和持久化

redis数据库中的所有数据都存储在内存中,由于内存的读写速度远快于硬盘,因而在性能上对比其他基于硬盘存储的数据库,优势很大。

将数据存储在内存中,在程序退出后,内存中的数据回消失,redis提供了对数据的持久化支持,能够将数据异步存放到硬盘,并不会影响服务的支持。

3. 功能丰富

redis虽然是作为数据库开发的,同时也扩展了丰富功能,能够将其作为缓存、队列系统使用。

redis能够为每个键设置生成时间,生存时间到期后,能够自动销毁,这个功能实现了redis作为缓存系统使用的可行性。

,作为缓存系统,redis还能投限制数据占用的最大内存空间,在数据达到空间限制后,可以按照一定的规则自动淘汰不需要的键。

redis的列表类型键可以用来实现队列,并且支持阻塞是读取,可以很容易实现一个高性能的优先级队列。

4. 简单稳定

通过常用的几十个简单命令,就能访问redis


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值