一、简介
1.1 特点
redis是一个开源的key-value存储系统,支持多种数据结构,包括:String,hashes,lists,sets和sorted sets。redis将数据存储于内存中,在内存不足的时候使用虚拟内存来保存数据,redis又两种持久化方案:
1、定时将当前缓存数据存到硬盘。(默认)
2、aof形式:把所有对redis 的操作命令存储到文件中,恢复时使用。
redis还支持主从复制,master写入,slave读取。redis是单线程的(保证原子性操作)。
1.2 与mybatis自带缓存对比
mybatis自带缓存存储于本机电脑内存,不能扩容,redis是集群式缓存,可以扩展。
1.3 redis集群介绍
redis是将数据存储到内存中,而我们电脑内存一般不大,所以可以搭建集群增大内存。可以看到,redis集群没有统一的入口。
有如下特点:
1、所有节点互通(PING-PONG机制)
2、节点的fail是超过半数节点判断失效后才失效。
3、客户端与节点连接不需要通过中间层,直接连接即可。
4、redis可以预先设置好最大16384个槽,存放任意一个key-value的值时,根据CRC16(key)mod 16384的值决定放到哪一个槽中,二这些槽又是均匀分配到没有redis节点上的。
redis主从模式:
redis为了提高可用性,增加了主从模式,每个主节点分配一个从节点,从节点作为主节点的备份节点,挡主节点挂掉过后,从节点代替,如果没有从节点,主节点挂掉过后,集群便挂掉。