当前位置:   article > 正文

Redis概述

redis概述

Redis应该不用多说了,不管是做服务端还是做数据,多多少少都会接触。

1.Redis概述

Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。

Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1GB,不像 memcached只能保存1MB的数据,因此Redis可以用来实现很多有用的功能,比方说用他的List来做FIFO双向链表,实现一个轻量级的高性 能消息队列服务,用他的Set可以做高性能的tag系统等等。另外Redis也可以对存入的Key-Value设置expire时间,因此也可以被当作一 个功能加强版的memcached来用。

Redis的主要缺点是数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。

1.Redis支持的数据类型

Redis通过Key-Value的单值不同类型来区分, 以下是支持的类型:

1.Strings
2.Lists
3.Sets 求交集、并集
4.Sorted Set 
5.hashes
  • 1
  • 2
  • 3
  • 4
  • 5

1.Redis其他特点

1.Redis为单进程单线程

redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销。

2.Redis为分布式

redis支持主从的模式。原则:Master会将数据同步到slave,而slave不会将数据同步到master。Slave启动时会连接master来同步数据。

这是一个典型的分布式读写分离模型。我们可以利用master来插入数据,slave提供检索服务。这样可以有效减少单个机器的并发访问数据

3.Redis的回收策略(淘汰策略)
1.volatile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰

2.volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰

3.volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰

4.allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰

5.allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰

6.no-enviction(驱逐):禁止驱逐数据
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/581303
推荐阅读
相关标签
  

闽ICP备14008679号