摘要:
断尾求生一一简单限流 除了控制流量,限流还有一个应用目的是控制用户行为,避免垃圾请求。 如何使用 Redis 来实现简单限流策略 用一个 zset 结构记录用户的行为历史,每一个行为都会作为 zset 申的一个 key 保存下来。同一个用户的同一种行为用一个 zset 记录。为节省内存,我们只需要保 阅读全文
摘要:
层峦叠崎一一布隆过滤器 布隆过滤器( Bloom Filter )在起到去重作用的同时,在空间上还能节省 90% 以上,只是稍微有那么点不精确,也就是有一定的误判概率。 怎样理解布隆过滤器? 布隆过滤器理解为一个不怎么精确的 set 结构,当你使用它的 contains 法判断某个对象是否存在时,它 阅读全文
摘要:
节衣缩食一一位图 Redis 提供了位图数据结构,位图的最小单位是比特(bit ),每个 bit 的取值只能是0 或 1,可以使用普通的 get/ set 直接获取和设置整个位图的内容,也可以使用位图操作 getbit/setbit 等将 byte 数组看成“位数组”来处理。 setbit key 阅读全文
摘要:
容器型数据结构的通用规则 list set hash zset 这四种数据结构是容器型数据结构,有两条通用规则:create if not exists :如果容器不存在,那就创建一个,再进行操作。 drop if no elements:如果容器里的元素没有了,那么立即删除容器,释放内存。 过期时 阅读全文
摘要:
Redis深度历险 ,核心原理与应用实践 授人以鱼不如授人以渔 Redis 可以做什么? 记录帖子的点赞数、评论数和点击数( hash )。 记录用户的帖子 ID 列表(排序〉,便于快速显示用户的帖子列表( zset )。 记录帖子的标题、摘要、作者和封面信息, 用于列表页展示( hash )。 记 阅读全文
摘要:
一。如何用idea导包? 我本身认为只需要jdk1.8的包就行了,认为包括要导入jsp+servlet包,可能认为只需要导例如:数据库驱动之类的包,完全分不清楚这些包是什么意思,然而我装的是idea社区版,经过一番搜索查阅资料后,发现maven导包非常方便,只需要在pom.xml配置你所需要jar包 阅读全文
摘要:
集群 简介 解决业务发展过程中遇到的峰值瓶颈,扩展业务需求内存容量,集群就是使用网络将若干台计算机联通起来,是一组机器的统称,他们作为一个整体向用户提供一组网络资源,单个的计算机是集群中的节点。 作用,特点 分担单台服务器的访问压力,实现负载均衡,缓解储存压力,实现可扩展性,降低单台服务器宕机带来的 阅读全文
摘要:
哨兵模式 简介 哨兵(sentinel) 是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的 master并将所有slave连接到新的master。 哨兵的作用 对master和slave是否正常运行进行监控。 master存活检测、master与slave运行 阅读全文
摘要:
主从复制 简介 将master中的数据即时、有效的复制到slave中,一个master可以连接多个slave,一个slave只能对应一个master。master的功能不受约束,但执行写操作时要把变化的数据自动同步到slave,slave只能读数据操作。 作用 实现读写分离,增加负载均衡(基于主从结 阅读全文
摘要:
Redis删除策略 Redis中的数据特征 过期数据:Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态 XX:具有时效性的数据 ;-1:永久有效的数据 ; -2:已经过期的数据或被删除的数据或未定义的数据。 时效性数据的存储结构 数据删除策略的目标 在内 阅读全文