Redis
文章平均质量分 58
致敬未来的我
掌握着自己的人生。。
展开
-
布隆过滤器
布隆过滤起是1970年由布隆提出来的,它实际上是一个很长的二进制数组+一系列随机hash算法映射函数,主要用于判断一个元素是否在集合中.总结:由一个初值都为零的bit数组和多个哈希函数构成,用来快速判断某个数据是否存在。原创 2022-11-23 20:48:04 · 779 阅读 · 0 评论 -
Redis Scan 用法,Java代码演示
由于 Redis 是单线程在处理用户的命令,而 Keys 命令会一次性遍历所有 Key,于是在 命令执行过程中,无法执行其他命令。这就导致如果 Redis 中的 key 比较多,那么 Keys 命令执行时间就会比较长,从而阻塞 Redis。原创 2022-09-09 10:27:11 · 1720 阅读 · 0 评论 -
Redis【缓存穿透+缓存击穿+缓存雪崩】解决方案
一.缓存穿透缓存穿透是指查询一个根本不存在的数据,缓存层和持久层都不会命中数据.而用户不断发起请求。由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义.(有恶意攻击,会直接影响到数据库性能(严重DB会挂掉))产生原因第一,自身业务代码或者数据出现问题(例如:set 和 get 的key不一致)第二,一些恶意攻击、爬虫等造成大量空命中(爬取线上商城商品数据,超大循环递增商品的ID)解决方案接口原创 2022-03-25 18:33:21 · 1517 阅读 · 0 评论 -
redis分布式锁解决方案
一、什么是分布式锁?线程锁:主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段。线程锁只在同一JVM中有效果,因为线程锁的实现在根本上是依靠线程之间共享内存实现的,比如synchronized是共享对象头,显示锁Lock是共享某个变量(state)进程锁:为了控制同一操作系统中多个进程访问某个共享资源,因为进程具有独立性,各个进程无法访问其他进程的资源,因此无法通过synchronized等线程锁实现进程锁。分布式锁:当多个进程不在同一个系统中,用分布式.原创 2022-03-20 22:29:40 · 4763 阅读 · 0 评论 -
redis主从复制 哨兵搭建
1.一主两从原理:Slave启动成功连接到master后会发送一个sync命令Mster接到命令启动后台的存盘进程,同时收集所有接收到的用于修改数据集命令,在后台进程执行完毕之后,master将传送整个数据文件到slave,以完成一次完全同步全量复制:而slave服务在接收到数据库文件数据后,将其存盘并加载到内存中增量复制:Master继续将新的所有收集到的修改命令依次传给slave,完成同步只要是重新连接master ,一次完全同步(全量复制)将自动执行搭建步骤1复制三个文件 分别是原创 2022-01-23 15:19:17 · 621 阅读 · 0 评论 -
Redis的入门
Redis学习笔记一.什么是RedisRedis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。二.Redis的特点1.Redis支持数据持久化,可以将内存中的数据保持在磁盘中,重启的时候,可以再次加载进行使用2.Redi原创 2020-08-03 20:43:43 · 558 阅读 · 1 评论