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适合的场景主要局限在较小的数据量的高性能操作和运算上。
2.Redis相比memcached有哪些优势?
(1) memcached所有的值均是简单的字符串,Redis作为其替代者,支持更为丰富的数据类型 (2) Redis的速度比memcached快很多 (3) Redis可以持久化其数据
3.Redis支持哪几种数据类型
String、List、Set、Sorted Set、Hashes
4、Redis只要消耗什么物理资源
redis是一种基于内存高性能的数据库--- 主要依赖于内存内存。
5、Redis的全称是什么?
Remote Dictionary Server
6、Redis有哪几种数据淘汰策略?
noeviction:返回错误当内存限制达到并且客户端尝试执行会让更多内存被使用的命令(大部分的写入指令,但DEL和几个例外)allkeys-lru: 尝试回收最少使用的键(LRU),使得新添加的数据有空间存放。volatile-lru: 尝试回收最少使用的键(LRU),但仅限于在过期集合的键,使得新添加的数据有空间存放。allkeys-random: 回收随机的键使得新添加的数据有空间存放。volatile-random: 回收随机的键使得新添加的数据有空间存放,但仅限于在过期集合的键。volatile-ttl: 回收在过期集合的键,并且优先回收存活时间(TTL)较短的键,使得新添加的数据有空间存放。