redis
文章平均质量分 92
卖栗
这个作者很懒,什么都没留下…
展开
-
SpringBoot 整合 Redis 使用详解(StringRedisTemplate 和 RedisTemplate 对比分析)
1、前期准备首先保证安装好redis,并开启远程访问权限(最好配置密码)pom.xml: 添加依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency>application.yml:spring: redis转载 2022-04-23 15:25:33 · 848 阅读 · 0 评论 -
springboot2.x整合redis,StringRedisTemplate和RedisTemplate的区别
spring-boot-starter-data-redis 是springboot1.5以后有的StringRedisTemplate和RedisTemplate的区别:1:两者的数据是不共通的;也就是说StringRedisTemplate只能管理StringRedisTemplate里面的数据,RedisTemplate只能管理RedisTemplate中的数据2:RedisTemplate使用的是JdkSerializationRedisSerializer 存入数据会将数据先序列化成字原创 2020-08-13 14:16:59 · 268 阅读 · 0 评论 -
redis的zset
zset适合排行榜,Topx这样的场景zset的底层结构是跳跃表,而与之类似的Java中的有序Set是TreeSet,使用红黑树实现的。concurrent包里面,还有一个类叫做ConcurrentSkipListMap,从它的名字就可以看出来,也是用跳跃表实现的,这个和zset最像。zset中能存放多少条记录?线上有没有有说服力的数据?先笼统的回答一下,zset理论上支持的元素最多是2^32-1个,约42亿,如果你的内存够大,放下国人绰绰有余。使用redis-benchmark去测这个效果,不是转载 2020-07-03 16:04:18 · 1555 阅读 · 0 评论 -
使用Redis需要注意的几点
Redis作为缓存中间件,被广泛应用在各类系统,用来提升系统性能和吞吐,下面总结几点开发人员在使用Redis时需要考虑的几个关键点:一. key的设计key命名规范:为了避免不必要的麻烦,我们要给系统定义一套key的设计规范。通俗点举个例子,我们在电脑上写好了一篇文章,需要保存起来,这时候我们会找个合适目录并且取个合适的文件名,以便后续要找它的时候,能想起它的名字并找到它,key的命名就好比给你要保存的文件命名和选目录,好的命名,能让你很容易想起它、找到它。大多缓存场景,是将需高频读取低频变更的数据转载 2020-06-16 11:55:01 · 309 阅读 · 0 评论 -
redis缓存穿透,击穿,雪崩
缓存穿透描述:缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,多来自于黑客攻击。由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时,可能DB就挂掉了,要是有人利用不存在的key频繁攻击我们的应用,这就是漏洞。如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导致数据库压力过大。解决方案:接口层增加校验,如用户鉴权校验,id做基础校验,i转载 2020-05-20 09:59:37 · 223 阅读 · 0 评论 -
redis 集群的三种方式
redis集群分为三种方式:具体可参考https://blog.csdn.net/e3002/article/details/100691472一. 主从模式(master/slaver)只需要在配置文件中加上一行配置,slaveof 192.168.1.1 6379,指明master的ip和端口号就可以了在redis.conf中,还有一些关于主从的其他配置,按需配置即可主从模式的一个作用是备份数据,这样当一个节点损坏(指不可恢复的硬件损坏)时,数据因为有备份,可以方便恢复。另一个作用是负载均原创 2020-05-19 23:36:09 · 1040 阅读 · 0 评论 -
redis的持久化
RDB持久化:保存某个时间点的全量快照,固定时长生成快照文件,有可能造成没到时间节点redis挂了,RDB数据遗漏Aof持久化:记录除查询以外的所有变更命令,一般配置成每秒fsync一次日志文件,性能也还是很高的如果redis开启了两种备份,会优先使用aof构建数据,因为aof保存的比较完整...原创 2020-05-19 20:28:34 · 123 阅读 · 0 评论 -
redis的过期策略和内存淘汰策略
redis的过期策略:出现情况我的数据明明都过期了,怎么还占用着内存啊?定期删除+惰性删除所谓定期删除,指的是redis默认是每隔100ms就随机抽取一些设置了过期时间的key,检查其是否过期,如果过期就删除。假设redis里放了10万个key,都设置了过期时间,你每隔几百毫秒,就检查10万个key,那redis基本上就死了,cpu负载会很高的,消耗在你的检查过期key上了。注意,这里可不是每隔100ms就遍历所有的设置过期时间的key,那样就是一场性能上的灾难。实际上redis是每隔100ms随机抽原创 2020-05-19 20:25:22 · 171 阅读 · 0 评论 -
Redis的特点
redis走的是内存,单线程,性能非常出色redis和memcache的区别:1、 Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等。2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash,zset等数据结构的存储。3、虚拟内存–Redis当物理内存用完时,可以将一些很久没用到的value 交换到磁盘4、过期策略–memcache在set时就指定,例如set key1 0 0 8,即永不过原创 2020-05-19 18:32:36 · 358 阅读 · 0 评论