第一章 redis简介

redis发展

08年,一间意大利的创业公司Merzia基于Mysql开发出一个网站统计系统LLOOGG,该公司的创始人Salvatore Sanfilippo觉得Mysql性能太差,决定为LLOOGG量身定制一个数据库,于09年开发完成,这个数据库就是redis。不过Salvatore Sanfilippo并不希望redis只局限与LLOOGG这个系统,他希望更多人使用redis,所以于同年,他将redis开源发布了,并于Pieter Noordhuis一起继续redis开发,一直到今天。

VMware公司与2010开始资助redis开发,他们两个分别与同年加入了VMware公司,全职开发redis。

2015年4月2日,发布了redis 3.0.0正式版本。

特性

数据结构

Redis是REmote DIctionary Server(远程数据字典服务器)的缩写,以字典结构存储数据的,并允许其他应用通过TCP读写数据字典的内容。

字典结构定义:dict[“key”] = “value”

  • dict是一个变量。
  • key是键名。
  • value是键值。
    其中键值支持多种数据类型:字符串类型、散列类型、列表类型、集合类型、有序集合类型。

例如,redis是这样存储一篇文章信息的。
articles[“title”] = “标题”
articles[“content”] = “正文”
articles[“tags”] = [“PHP”,”REDIS”]

如果把这篇文章用关系数据库存储,需要创建三个表,一个表存储文章信息,一个表建立标签,还有一个表建立文章与标签的关联关系。查询的时候需要同时查询三个表,不是很直观。用redis存储比较接近程序的存储方式。

redis的另一个优势是对不同数据类型通过非常便捷的操作方式,Redis可以对标签进行如交集、并集这样的集合运算操作。轻易的实现“找出属于A标签和B标签,但不属于C标签”的操作。关系数据库处理起来比较繁琐。

内存存储与持久化

redis所有数据都是存储在内存的,内存的读写速度远比硬盘快很多,所以比其他使用硬盘存储的数据库性能高很多。

redis数据是存储在内存的,退出程序后内存的数据会丢失。不过redis支持数据持久化–把内存数据异步写入到硬盘。

功能丰富

redis可以为每个键设置超时时间,所以经常被用来作为缓存数据库。
reids支持阻塞式读写,可以实现优先级队列。
redis支持“发布/订阅”的消息模式,基于这种模式可以构建一个聊天系统。

简单稳定

redis读写数据的命令很简单。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值