Redis知识点汇总----(面试准备)

Redis是一个内存数据库,提供高性能的Key-Value存储,支持多种数据结构如Strings、Lists、Sets等。作为单进程单线程模型,Redis利用队列处理并发访问。其持久化策略包括RDB和AOF,且支持主从复制和数据分片。Redis适用于会话缓存、全页缓存、队列、排行榜/计数器和发布/订阅等场景。
摘要由CSDN通过智能技术生成

(1)什么是redis?

Redis 是一个基于内存的高性能key-value数据库。 

(2)Reids的特点

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来用。

(3)Redis支持的数据类型

Redis通过Key-Value的单值不同类型来区分, 以下是支持的类型:
Strings(Redis没有直接使用C的以空字符结尾的字符数组,而是自己构建了简单动态字符串SDS.Redis数据库里面,包含字符串值的键值对的底层实现都是SDS.)
Lists (由list结构和listNode结构组成的链表:双端,无环,带表头指针和表尾指针,带链表长度计数器,多态(保存各种不同类型的值)。)
Sets 求交集、并集
Sorted Set 
hashes

(5)Redis是单进程单线程的

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

 (6)虚拟内存

当你的key很小而value很大时,使用VM的效果会比较好.因为这样节约的内存比较大.
当你的key不小时,可以考虑使用一些非常方法将很大的key变成很大的value,比如你可以考虑将key,value组合成一个新的value.
vm-max-threads这个参数,可以设置访问swap文件的线程数,设置最好不要超过机器的核数,如果设置为0,那么所有对swap文

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值