![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 68
快快乐乐#
这个作者很懒,什么都没留下…
展开
-
springboot+redis+redisson 分布式锁 续期 秒杀场景
pom.xml配置文件 <!--redis--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <exclusions>原创 2021-08-27 15:51:54 · 883 阅读 · 0 评论 -
布隆过滤器原理和基于BloomFilter的误判率展示
布隆过滤器原理和基于BloomFilter的误判率展示布隆过滤器布隆过滤器原理布隆过滤器是由n个Hash函数和一个二进制数组组成。如图所示(参考,hash函数可以多个)1.保存操作发来一个请求数据hello 对数据hello经过三次hash运算,分别得到三个值(假设1,3,5)。 在对应的二进制数组里,将下标为1,3,5的值置为1。 这样hello数据就保存了。2.查询操作发来一个请求数据hello 对数据hello经过三次hash运算,分别得到三个值(假设1,3,.原创 2021-06-03 09:42:25 · 708 阅读 · 0 评论 -
redis系列(1):redis常用问题
一、Redis 持久化机制Redis是一个支持持久化的内存数据库,通过持久化机制把内存中的数据同步到硬盘文件来保证数据持久化。当Redis重启后通过把硬盘文件重新加载到内存,就能达到恢复数据的目的。实现:单独创建fork()一个子进程,将当前父进程的数据库数据复制到子进程的内存中,然后由子进程写入到临时文件中,持久化的过程结束了,再用这个临时文件替换上次的快照文件,然后子进程退出,内存释放。RDB是Redis默认的持久化方式。按照一定的时间周期策略把内存的数据以快照的形式保存到硬盘的二进制文件。原创 2021-06-03 09:07:52 · 230 阅读 · 0 评论 -
redis系列(8):Redis持久化,RDB和AOF 的区别、混合持久化
redis常见应用场景redis应用场景总结redis平时我们用到的地方蛮多的,下面就了解的应用场景做个总结:1、热点数据的缓存由于redis访问速度块、支持的数据类型比较丰富,所以redis很适合用来存储热点数据,另外结合expire,我们可以设置过期时间然后再进行缓存更新操作,这个功能最为常见,我们几乎所有的项目都有所运用。2、限时业务的运用redis中可以使用expire命令设置一个键的生存时间,到时间后redis会删除它。利用这一特性可以运用在限时的优惠活动信息、手机验证码等业务原创 2021-06-02 11:09:32 · 289 阅读 · 0 评论 -
redis系列(1):redis基础入门、特性、应用场景
redis常见应用场景redis应用场景总结redis平时我们用到的地方蛮多的,下面就了解的应用场景做个总结:1、热点数据的缓存2、限时业务的运用3、计数器相关问题4、排行榜相关问题5、分布式锁6、延时操作7、分页、模糊搜索8、点赞、好友等相互关系的存储9、队列...原创 2021-06-02 11:32:56 · 283 阅读 · 0 评论 -
redis系列(2):linux服务器redis安装
linux服务器redis安装原创 2021-06-02 11:22:33 · 156 阅读 · 0 评论 -
redis系列(7):redis 集群
RedisCluster 是 redis 的分布式解决方案,在 3.0 版本后推出的方案,有效地解决了 Redis 分布式的需求,当遇到单机内存、并发等瓶颈时,可使用此方案来解决这些问题1 分布式数据库概念:1,分布式数据库把整个数据按分区规则映射到多个节点,即把数据划分到多个节 点上,每个节点负责整体数据的一个子集 比如我们库有 900 条用户数据,有 3 个 redis 节点,将 900 条分成 3 份,分别存入 到 3个 redis 节点2,分区规则:常见的分区规则哈希分区和顺序分区,r原创 2021-06-01 09:25:30 · 365 阅读 · 0 评论 -
redis系列(6):哨兵机制
1,为什么要讲哨兵机制?A,我们学习了 redis 的主从复制,但如果说主节点出现问题不能提供服务, 需要人工重新把从节点设为主节点,还要通知我们的应用程序更新了主节点的地址,这 种处理方式不是科学的,耗时费事B,同时主节点的写能力是单机的,能力能限C,而且主节点是单机的,存储能力也有限其中 2,3 的问题在后面 redis 集群课会讲,第 1 个问题我们用哨兵机制来解决2,主从故障如何故障转移(不满足高可用):A,主节点(master)故障,从节点 slave-1 端执行 slav原创 2021-05-27 11:12:35 · 450 阅读 · 0 评论 -
redis系列(3):Redis 单例、主从模式、sentinel 以及集群的配置方式及优缺点对比
摘要: redis作为一种NoSql数据库,其提供了一种高效的缓存方案,本文则主要对其单例,主从模式,sentinel以及集群的配置方式进行说明,对比其优缺点,阐述redis作为一种缓存框架的高可用性。redis作为一种高效的缓存框架,使用是非常广泛的,在数据存储上,在运行时其将数据存储在内存中,以实现数据的高效读写,并且根据定制的持久化规则不同,其会不定期的将数据持久化到硬盘中。另外相较于其他的NoSql数据库,redis提供了非常丰富的数据结构,如dict,sds,linkedlist,zipl原创 2021-05-27 09:44:44 · 851 阅读 · 2 评论 -
redis系列(5):redis主从复制
一、复制:1. 主从复制a,方式一、新增 redis6380.conf, 加入 slaveof 192.168.42.111 6379, 在 6379 启动完 后再启 6380,完成配置;b,方式二、redis-server --slaveof 192.168.42.111 6379c,查看状态:info replicationd,断开主从复制:在 slave 节点,执行 6380:>slaveof no onee,断开后再变成主从复制:6380:> slaveof 19原创 2021-05-27 09:27:57 · 198 阅读 · 0 评论 -
redis系列-redis哨兵安装步骤
Redis哨兵安装步骤----------------------------------之前的redis6379.conf的配置不变,做为主节占,并且复制出两个配置文件redis6380.conf, redis6381.conf,这两个配置文件启动后的redis做为6379节点的从节点。:注意:redis6380.conf和redis6381.conf 加上slaveof 127.0.0.1 6379 修改 requirepass 12345678 ,注释掉bind 1...原创 2021-05-27 08:56:22 · 608 阅读 · 0 评论 -
redis系列(4):redis单节点配置文件说明
1,在redis.conf第89行,将protected-mode no2,在redis.conf第71行修改下bind 192.168.42.111 (ip为你linux的ip);3,在redis.conf第502行,加上 requirepass "12345678", 登录密码测试:1,启动redis: ./redis-server redis.conf &2, 连接redis: ./redis-cli -h 192.168.42.111 -p 6379 -a 12345...原创 2021-05-26 17:17:10 · 385 阅读 · 0 评论 -
redis缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题
一、缓存雪崩缓存雪崩我们可以简单的理解为:由于原有缓存失效,新缓存未到期间(例如:我们设置缓存时采用了相同的过期时间,在同一时刻出现大面积的缓存过期),所有原本应该访问缓存的请求都去查询数据库了,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机。从而形成一系列连锁反应,造成整个系统崩溃。缓存失效时的雪崩效应对底层系统的冲击非常可怕!大多数系统设计者考虑用加锁或者队列的方式保证来保证不会有大量的线程对数据库一次性进行读写,从而避免失效时大量的并发请求落到底层存储系统上。还有一个简单方案就时讲缓原创 2021-10-26 17:54:51 · 215 阅读 · 0 评论 -
SpringBoot结合Aop+Redis防止接口重复提交
为什么要防止接口重复提交?对于有些敏感操作接口,比如新增数据接口、付款接口,要是用户操作不当多次点击提交按钮,这些接口就会被多次请求,最后可能导致系统异常。前端可以如何控制?前端可以通过js进行控制,当用户点击提交按钮,1.按钮设置多少秒内不可点击状态2.按钮点击后弹出loading提示框,避免再次点击,直到接口请求返回后3.按钮点击后跳转到新的页面但是,请记住,永远不要相信用户的行为,因为你不知道用户会做哪些奇葩的操作,所以,最重要的还是要在后端处理。使用aop+redis进行拦截处原创 2021-03-02 16:55:11 · 594 阅读 · 0 评论 -
springboot+redis布隆过滤器数据
布隆算法是一个以牺牲一定的准确率来换取低内存消耗的过滤算法,可以实现大量数据的过滤、去重等操作。为了实现分布式过滤器,在这里使用了Redis,利用Redis的BitMap实现布隆过滤器的底层映射。布隆过滤器的一个关键点就是如何根据预计插入量和可接受的错误率推导出合适的BIt数组长度和Hash函数个数,当然Hash函数的选取也能影响到过滤器的准确率和性能。为此我参考了Google的guava包中有关布隆过滤器的相关实现。同时我还利用的Spring实现RedisBean和FilterBean的.原创 2021-03-02 15:22:34 · 678 阅读 · 0 评论