redis
文章平均质量分 52
✘迟暮
这个作者很懒,什么都没留下…
展开
-
Feed流的模式
Feed流产品有两种常见的模式: Timeline:不做内容筛选,简单的按照内容发布时间排序,常用于友好或关注。例如朋友圈 优点:信息全面,不会有缺失。并且实现也相对简单 缺点:信息噪音较多,用户不一定感兴趣,内容获取效率低 智能排序:利用智能算法屏蔽掉违规的、用户不敢兴趣的内容。推送用户感兴趣信息来吸引用户 优点:投喂用户 感兴趣信息,用户黏度很高,容易沉迷 缺点:如果算法不精准,可能起到反作用 Feed流的实现方案1 拉模式:也叫做都扩撒 作者将作品发到自己的收件箱中,粉丝读时,先拉原创 2022-04-20 22:26:15 · 496 阅读 · 0 评论 -
Redis消息队列
List数据结构模拟消息队列 基于PubSub的消息队列 基于Stream的消息队列 基于Stream的消息队列-消费者组 Redis消息队列总结原创 2022-04-20 14:43:48 · 841 阅读 · 0 评论 -
Redis全局ID生成器
全局ID生成器 全局ID生成器,是一种在分布式系统下用来生成全局唯一ID的工具,一般要满足下列特性:唯一性,高可用,高性能,递增性,安全性。 为了增加ID的安全性,我们可以不直接使用Reids自增的数值,而是拼接一些其它信息: 符号位+时间戳(31bit)+序列号(32bit) ID组成部分: 符号位:1bit,永远为0 时间戳:31bit,以秒为单位,可有69年 序列化:32bit,秒内的计数器,支持每秒产生2^32个不同ID //1生成时间戳 LocalDateTime now =Lo原创 2022-04-14 19:53:43 · 756 阅读 · 0 评论 -
Redis缓存更新策略及数据库缓存双写不一致问题解决方案
Redis缓存更新策略及数据库缓存双写不一致问题原创 2022-04-13 22:37:28 · 1218 阅读 · 0 评论 -
Redis 雪崩和击穿
缓存雪崩 缓存雪崩是指在同一时间段大量的缓存key同时失效或者Redis服务宕机,导致大量请求到达数据库,带来巨大压力。 解决方案: 给不同的key的TTL添加随机值 利用Redis集群提高服务的可用性 给缓存业务添加将降级限流策略 给业务添加多级缓存 缓存击穿 缓存击穿问题也叫热点key问题,就是一个被高并发并且缓存重建业务较复杂的key突然失效了,无数的请求访问会瞬间给数据库带来巨大的冲击;例如一个人查询数据库重建缓存数据,在缓存数据还没有写入数据库的时候其它的人也对进行重复原创 2022-04-12 17:13:14 · 962 阅读 · 0 评论 -
Redis 缓存穿透
缓存穿透 缓存穿透是指客户端请求的数据在缓存中和数据看中都不存在,这样缓存就用永远不会生效,这些请求都会打到数据库中。 缓存空对象 原理:在缓存和数据库中如果都不存在的情况下,将一个控制写入缓存,在下次查询的时候就不会存在缓存击穿的问题了。同时也用设置有效时长。 优点:实现简单,维护方便 缺点:额外内存消耗 可能造成短期的不一致 、 布隆过略器 优点:内存占用较少,没有多余的key 缺点:实现复杂 存在误判可能 布隆过略器:是一系列的hash函数+bitmap原创 2022-04-12 14:21:20 · 1104 阅读 · 0 评论