Redis学习总结

2016-01-29 demon7452 更多博文 » 博客 » GitHub »

原文链接 https://demon7452.github.io/2016/01/29/Redis%E5%AD%A6%E4%B9%A0%E6%80%BB%E7%BB%93.html
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。


Redis学习总结

简介

  • 起源:随着Web 2.0的蓬勃发展,网站数据快速增长,对高性能读写的需求越来越多,再加上网站上半结构化的数据比重越来越大。Redis由此应运而生。
  • 定义:Redis是Remote Dictionary Server(远程字典服务)的缩写,它以字典结构存储数据,并允许其他应用通过TCP协议读写字典中的内容。

特性

1、存储结构

  • Redis以字典结构存储数据,目前字典中支持的数据类型如下:
    • 字符串类型
    • 散列类型
    • 列表类型
    • 集合类型
    • 有序集合类型
  • 优点:
    • Redis 字典结构的存储方式和对多种键值数据类型的支持使得开发者可以将程序中的数据直接映射到Redis中,数据在Redis中的存储形式和其在程序中的存储方式非常接近。
    • Redis 对不同的数据类型提供了非常方便的操作方式。

2、内存存储与持久化

  • Redis 数据库中的所有数据都存储在内存中,其读写速度要远快于基于硬盘存储的数据库。
  • Redis 提供了对持久化的支持,可以将内存中的数据异步写入到硬盘中,同时不影响继续提供服务。

3、功能丰富

  • Redis 提供了丰富的功能,可以将其用作缓存系统、队列系统等。
    • Redis 可以为每个键设置生存时间(Time To Live,TTL),生存时间到期后键会自动被删除。这一功能让Redis作为缓存系统来使用,作为缓存系统,Redis可以限定数据占用的最大内存空间,数据达到空间限制后可以按照一定规则自动淘汰不需要的键。它可以与 Memcached 相竞争。
    • Redis 的列表类型键可以用来实现对列,并且支持阻塞式读取,可以很容易实现一个高性能的优先级队列。在更高层面上,Redis支持“发布/订阅”的消息模式。

4、简单稳定

  • Redis 直观的存储结构使得通过程序与Redis交互十分简单,可以在Redis中使用命令来读写数据
  • Redis 提供了几十中不同编程语言的客户端库。
  • Redis 是开源的,开源即是正义。(。・`ω´・)

参考文档

1.Redis入门指南