NoSQL

彻底弄懂Redis的LRU淘汰策略

今天我们这篇文章的目的是要 搞懂LRU淘汰策略 以及 实现一个LRU算法 。 文章会结合图解循序渐进的讲解,跟着我的思路慢慢来就能看懂,我们开始吧。 文章导读 Redis的淘汰策略 为什么要有淘汰策略呢? 因为存储内存的空间是有限的,所...

Redis高并发问题的解决方法

本文讲述了Redis高并发问题的解决办法。分享给大家供大家参考,具体如下: redis为什么会有高并发问题 redis的出身决定  redis是一种单线程机制的nosql数据库,基于key-value,数据可持久化落盘。由于单线程所以redis本...

基于Redis实现每日登录失败次数限制

1. 思路 下面是我以前写的代码,没考虑高并发场景。如果是高并发场景下,要考虑到redis的set方法覆盖值问题,可以使用incr来替代get,set保证数据安全 通过redis记录登录失败的次数,以用户的username为key 每次收到登录的请求时,都...

深入浅析Redis 集群伸缩原理

1. 迁移槽 2. 忘记节点 Redis 节点分别维护自己负责的槽和对应的数据。伸缩原理:Redis 槽和对应数据在不同节点之间移动 环境:CentOS7 搭建 Redis 集群 一、集群扩容 1. 手动扩容 (1) 准备节点 9007,并加入集群 192...

Redis 实现同步锁案例

1、技术方案 1.1、redis的基本命令 1)SETNX命令(SET if Not eXists) 语法:SETNX key value 功能:当且仅当 key 不存在,将 key 的值设为 value ,并返回1;若给定的 key 已经存在,则 SET...

解析Redis 数据结构之简单动态字符串sds

Redis是用ANSI C语言编写的,它是一个高性能的key-value数据库,它可以作用在数据库、缓存和消息中间件。其中 Redis 键值对中的键都是 string 类型,而键值对中的值也是有 string 类型,在 Redis 中 string 类型运...

Redis主从复制详解

单机Redis存在的问题 无法故障转移 ,无法避免单点故障 磁盘空间的瓶颈 QPS瓶颈 Redis主从复制的作用 提供数据副本 扩展读性能 配置方法 通过命令 通过配置文件 演示 为方便演示,在一台服务器上搭建redis主从(生产上不会这样做),根据端口区...

Redis 对过期数据的处理方法

在 redis 中,对于已经过期的数据,Redis 采用两种策略来处理这些数据,分别是惰性删除和定期删除 惰性删除 惰性删除不会去主动删除数据,而是在访问数据的时候,再检查当前键值是否过期,如果过期则执行删除并返回 null 给客户端,如果没有过期则返回正...

Redis中实现查找某个值的范围

本文来自Redis在Google Group上的一个问题,有一位同学发贴求助,说要解决如下的一个问题:他有一个IP范围对应地址的列表,现在需要给出一个IP的情况下,迅速的查找到这个IP在哪个范围,也就是要判断此IP的所有地。这个问题引来了Redis作者Sa...

Redis生成分布式系统全局唯一ID的实现

分布式系统全局唯一ID 在互联网系统中,并发越大的系统,数据就越大,数据越大就越需要分布式,而大量的分布式数据就越需要唯一标识来识别它们。 例如淘宝的商品系统有千亿级别商品,订单系统有万亿级别的订单数据,这些数据都是日渐增长,传统的单库单表是无法支撑这种级...