博主教材:李子骅.人民邮电出版社.《redis入门指南》
博主操作系统系统:虚拟机Ubuntu16.04
博主redis版本:3.0.6
第1章:简介
redis是一个开源的、高性能的、基于键值对缓存的与存储系统,
通过提供多种键值数据类型来适应不同场景下的缓存与存储需求.
1.1历史域发展
使用redis情况:
- 国内:新浪微博,街旁,知乎
- 国外:GitHub,Stack Overflow,Flickr,暴雪,Instagram
- VMware公司从2010年开始赞助redis的开发
1.2特性
1.2.1存储结构
redis是REmote DIctionary server(远程字典服务器)的缩写
redis支持的键值数据类型:
- 字符串类型 string
- 散列类型 hash
- 列表类型 list
- 集合类型 set
- 有序集合类型 zset
1.2.2内存存储与持久化
redis数据库中所有数据都存储在内存中.由于内存的读写速度
远快于硬盘,因此redis在性能上对比其他基于硬盘存储的数据库
有非常明显的优势.在一台普通的笔记本电脑上,redis可以在一秒
内读写超过10万个键值
1.2.3功能丰富
- redis可以为每个键设置生存时间,生存事件到期后自动被删除
- 在性能上,redis是单线程模型,Memcached支持多线程
- redis可以限定数据占用的最大内存空间,在数据达到内存空间限制后可以按照一定的规则自动淘汰不需要的键
- redis的列表类型键可以用来实现队列,并支持阻塞式读取
- redis支持'发布/订阅'的消息模式,可以基于此构建聊天室等系统
1.2.4简单稳定
- redis直观的存储结构使得通过程序与redis交互十分简单
- redis提供了100多个命令,但常用只有十几个,并且每个都容易记忆
- redis提供了几十种不同编程语言的客户端库
- redis使用C语言开发,代码量只有3万多行.这降低了用户通过修改redis
源代码来使之更适合自己项目需要的门槛 - redis是开源的