redis
文章平均质量分 75
你真的是一个很帅的程序媛
这个作者很懒,什么都没留下…
展开
-
Redis学习笔记
一、优势和缺点 优点:单线程性能高和抗并发 缺点: 1.缓存和数据库db双写一致性问题 2.缓存击穿 3.缓存雪崩 4.缓存并发竞争问题 二、为什么会这么快 1、纯内存操作:内存相对于磁盘有天然的性能优势, 类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1); 2、单线程:避免过多的上下文切换开销;避免同步机制的开销(死锁,锁粒度等问题);简单可维护(作者代码间接性理念); 3、I/O多路复用:基于epoll/select/kqueue等I/O多路复用技术,原创 2021-04-24 11:47:58 · 80 阅读 · 0 评论 -
本地缓存caffeine使用方式
使用方式: 一、导入包 <dependency> <groupId>com.github.ben-manes.caffeine</groupId> <artifactId>caffeine</artifactId> <version>2.8.6</version> </dependency> 二、增加配置类 @Configuration public class Loca...原创 2021-04-24 11:46:56 · 329 阅读 · 0 评论 -
redis应用场景记录
应用场景 计数器 1、value为set数据结构时可以做全局去重 1、分布式锁 setnx expire 2、延迟队列/排行榜 数据类型使用soredset,时间戳作为score,消息内容作为key调用zadd来生产消息,消费者用zrangebyscore指令获取N秒之前的数据轮询进行处理。 @Service("distributeDelayedQueueServiceRenaultImpl") public class DistributeDelayedQueueServiceRe.原创 2021-04-24 11:45:53 · 67 阅读 · 0 评论 -
redis性能优化
前言 从资源使用角度来看,redis优化可以包含的知识点如下: CPU 相关:使用复杂度过高命令、数据的持久化,都与耗费过多的 CPU 资源有关 内存相关:bigkey 内存的申请和释放、数据过期、数据淘汰、碎片整理、内存大页、内存写时复制都与内存息息相关 磁盘相关:数据持久化、AOF 刷盘策略,也会受到磁盘的影响 网络相关:短连接、实例流量过载、网络流量过载,也会降低 Redis 性能 计算机系统:CPU 结构、内存分配,都属于最基础的计算机系统知识原创 2021-04-24 11:44:57 · 255 阅读 · 0 评论 -
redis线上问题记录
一、大key 延迟队列采取zset集合来做延迟推送能力,十个业务节点,建了十个key key:DELAYED_MESSAGE_ZSET + new Random().nextInt(delayMessageZone) 上线之后出现慢查询和缓存使用完毕 zcard命令查询每个key下有1588600条数据(双十一) 高峰期间,慢查询一天也会有几百条 十个key路由到redis集群中的其中四台,导致四台内存使用完毕,导致内存失效 扩展性不好,增加一台机器需要修改代码原创 2021-04-24 11:36:13 · 174 阅读 · 0 评论 -
redis三大问题 终极解决方案
缓存失效 背景:通过key查询值,先查询缓存是否存在,如果存在返回,不存在查询数据库,然后更新缓存并返回,如果数据库不存在返回null 例如:订单号是从1自增开始,如果黑客或者其他服务传参为-1或者很大的参数 缓存穿透(db和缓存都没有) 问题: 当key为一个不符合业务场景的值,缓存和数据库都不存在,外部侵入者就可以一直请求,导致数据库和缓存压力大 解决: 1、业务判断,key值大小校验,不能为空或者大于0小于10000之类的; 2、缓存和数据库查询不出来时,设置key-value为null,设置超时时间原创 2021-04-24 11:31:49 · 403 阅读 · 0 评论 -
Redis学习笔记
一、优势和缺点 优点:单线程性能高和抗并发 缺点: 1.缓存和数据库db双写一致性问题 2.缓存击穿 3.缓存雪崩 4.缓存并发竞争问题 二、为什么会这么快 1、纯内存操作:内存相对于磁盘有天然的性能优势, 类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1); 2、单线程:避免过多的上下文切换开销;避免同步机制的开销(死锁,锁粒度等问题);简单可维护(作者代码间接性理念); 3、I/O多路复用:基于epoll/select/kqueue等I/O多路复用技术,原创 2021-04-24 11:06:19 · 1754 阅读 · 5 评论