![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Redis
Q z1997
这个作者很懒,什么都没留下…
展开
-
Springboot统一给redisKey加前缀
通过自定义redis key 序列化器。原创 2022-08-21 17:48:02 · 3386 阅读 · 1 评论 -
SpringRedisTemplate使用线程池
可以使用 /** * 设置redisTemplate 序列号器 * * @param redisConnectionFactory Redis链接工厂 * @return redisTemplate */ @Bean public RedisTemplate<String, Object> redisTemplate(LettuceConnectionFactory redisConnectionFactory) {原创 2021-10-06 15:55:17 · 847 阅读 · 0 评论 -
缓存带锁更新方案(细颗粒锁)
缓存带锁更新方案(细颗粒锁)强一致性,更新数据库之后主动淘汰缓存,读请求更新缓存避免缓存雪前,更新缓存的过程需要进行同步控制,同一时间只允许一个请求访问数据库,为了保证数据的一致性还要加上缓存失效时间;这里就是演示一下思路package cacheupdate;import java.util.concurrent.ConcurrentHashMap;import java.util.concurrent.locks.Lock;import java.util.concurrent.lo原创 2021-05-01 14:34:18 · 253 阅读 · 0 评论 -
Redis集群
Redis集群redis最开始使用主从模式做集群,若master宕机需要手动配置slave转为master;后来为了高可用提出来哨兵模式,该模式下有一个哨兵监视master和slave,若master宕机可自动将slave转为master,但它也有一个问题,就是不能动态扩充;所以在3.x提出cluster集群模式。一、redis-cluster设计Redis-Cluster采用无中心结构,每个节点保存数据和整个集群状态,每个节点都和其他所有节点连接。redis.png其结构特点:1、所有的red原创 2021-02-17 16:01:35 · 122 阅读 · 0 评论 -
Redis的复制(Master/Slave)
Redis的复制(Master/Slave)是个啥主从复制,主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主主要作用读写分离 容灾恢复怎么用配从(库)不配主(库)Info replication查看当前redis 信息从库配置:命令:slaveof 主库IP 主库端口SLAVEOF no one使当前数据库停止与其他数据库的同步,转成主数据库每次与master断开之后,都需要重新连接,除非你配置进redi原创 2021-02-17 15:43:07 · 137 阅读 · 1 评论 -
Redis的发布订阅
Redis的发布订阅是什么进程间的一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。订阅/发布消息图命令案列先订阅后发布后才能收到消息,1 可以一次性订阅多个,SUBSCRIBE c1 c2 c32 消息发布,PUBLISH c2 hello-redis3 订阅多个,通配符*, PSUBSCRIBE new*4 收取消息, PUBLISH new1 redis2015...原创 2021-02-17 15:24:53 · 50 阅读 · 0 评论 -
Redis与Memcached对比
Redis与Memcached对比Redis:支持多种数据类型 String List zSet Set Hash支持序列化使用的是单线程 +多路IO复用技术Memcached:仅支持简单的字符串类型不支持序列化使用的是多线程 + 锁原创 2021-02-17 15:23:12 · 62 阅读 · 0 评论 -
Redis事务
Redis事务是什么可以一次执行多个命令,本质是一组命令的集合。一个事务中的所有命令都会序列化,按顺序地串行化执行而不会被其它命令插入,不许加塞干什么一个队列中,一次性、顺序性、排他性的执行一系列命令怎么用multi开始事务exec执行事务discard取消事务...原创 2021-02-17 15:22:16 · 43 阅读 · 0 评论 -
Redis持久化
Redis持久化RDB(Redis DataBase)是什么:在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方式要比AOF方式更加的高效。RDB的原创 2021-02-17 15:13:26 · 88 阅读 · 0 评论 -
Redis配置文件
Redis配置文件# 内存的说明# 1k => 1000 bytes# 1kb => 1024 bytes# 1m => 1000000 bytes# 1mb => 1024*1024 bytes# 1g => 1000000000 bytes# 1gb => 1024*1024*1024 bytes# # Redis配置文件不区分大小写 # 1GB 1Gb 1gB 一样#是否在后台执行,yes:后台运行;no:不是后台运行daemonize原创 2021-02-14 18:29:30 · 67 阅读 · 0 评论 -
Redis基本命令
Redis基本命令select [index]选择库keys *查询当前库中的所有keyexists [key]判断这个key是否存在返回 1: 表示key存在 0: 表示key不存在type [key]判断这个key的类型del [key]删除这个key返回 1: 表示删除key成功 0: 表示删除key失败expire [key] [seconds]给一个key设置过期时间 单位 秒ttl [key]查看该key 还有多少秒过期 -1: 表示永远不过期 -2: 表示已原创 2021-02-13 22:25:15 · 263 阅读 · 0 评论 -
Redis为什么单线程Redis有这么高的效率(多路IO复用技术)
多路IO复用技术多路复用是指使用一个线程来检查多个文件描述符(Socket)的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)简单说就是所有的请求到了Redis全部会被监视准备完成的请求会直接交给Redis处理,所以Redis一直在处理请求,而没有了接受到请求等待请求结束的这个阻塞状态.简单的介绍一下阻塞IO 非阻塞IO 多路IO复用阻塞原创 2021-02-03 20:56:10 · 178 阅读 · 0 评论