Redis Pipelining 底层原理分析及实践

作者:vivo 互联网服务器团队-Wang FeiRedis是一种基于客户端-服务端模型以及请求/响应的TCP服务。在遇到批处理命令执行时,Redis提供了Pipelining(管道)来提升批处理性能。本...

2024-04-11

从 Oracle 到 MySQL 数据库的迁移之旅

目录 引言 一、前期准备工作 1.搭建新的MySQL数据库 2 .建立相应的数据表 2.1 数据库兼容性分析 2.1.1 字段类型兼容性分析 2.1.2 函数兼容性分析 2.1.3...

2024-04-11

MySQL 主从 AUTO_INCREMENT 不一致问题分析

作者:vivo 互联网数据库团队 - Wei Haodong本文介绍了 MySQL5.7 中常见的replace into 操作造成的主从auto_increment不一致现象,一旦触发了主从切换,业务的正常插入操作会触发...

2024-04-07

Redis动态字符串SDS的实现

动态字符串SDSRedis中保存的Key是字符串,value往往是字符串或者字符串的集合。可见字符串是Redis中最常用的一种数据结构。不过Redis没有直接使用C语言中的字符串,因为C语言字...

2024-04-01

Redis消息队列的三种实现方式

目录前言List实现消息队列PubSub消息队列Stream消息队列三种实现方式对比前言为什么要使用Redis的消息队列?成本低,对于RabbitMQ或是Kafka来说,已经是重量级的消息队列。Redis...

2024-04-01

Redis中缓存预热与缓存穿透解决方案

目录一、简介1.1 简介1.2 缓存预热 穿透二、缓存预热2.1 缓存预热基本原理2.2 Redis 缓存预热实现2.2.1 基于数据量预热2.2.2 基于时间预热2.2.3 周期性预热三、缓存穿透3.1...

2024-04-01

Redis HyperLogLog数据统计轻量级解决方案详解

目录引言深入理解 HyperLogLog1、HyperLogLog 基础2、HyperLogLog 与传统方法对比Redis 中的 HyperLogLog1、Redis 与 HyperLogLog2、代码示例:3、实际应用场景案例研究总结...

2024-04-01

NestJS+Redis实现手写一个限流器

目录前言概念浅析具体实现redis 相关装饰器相关guard 相关使用方法前言限流是大型系统必备的保护措施,常用的限流算法主要有固定时间窗口,滑动时间窗口,漏桶,令牌桶等。本文将会...

2024-04-01

基于redis 7.2.3的makefile源码解读学习

目录基于redis 7.2.3的makefile源码makefile两个伪指令这个$(MAKE)是什么?这个$@又是什么?$(REDIS_LD)变量基于redis 7.2.3的makefile源码先从makefile 入手,我这里是基于redis...

2024-04-01

详解Redis高效恢复策略内存快照与AOF

目录Redis宕机恢复的重要性和挑战内存快照的基本概念内存快照与AOF方法的比较Redis内存快照的执行过程数据修改与内存快照快照频率的考量快照与AOF的混合使用总结与建议Redi...

2024-04-01

Redis和MySQL保证双写一致性的问题解析

目录双检加锁策略数据库和缓存一致性的几种更新策略Redis和MySQL的双写一致性指的是在同时使用缓存和数据库存储数据的时候,保证Redis和MySQL中数据的一致性。用户发起请求,先...

2024-04-01

Redis Template使用详解示例教程

目录RedisTemplate介绍StringRedisTemplate介绍RedisConnectionFactory介绍RedisConnectionFactory源码解析RedisOperations介绍RedisOperations源码解析RedisTemplate使用...

2024-04-01

详解Redis缓存与Mysql如何保证双写一致

目录前言延迟双删策略基于订阅binlog异步更新缓存具体binlog订阅实现总结前言缓存和数据库如何保证数据的一致是个很经典的问题,关于先更新缓存,还是先更新数据库,或者先删除缓...

2024-04-01

Redis分布式限流的几种实现

目录一、 简介二、分布式限流1 数据结构1.1 Redis List1.2 Redis Set1.3 Redis Sorted Set2 实现分布式限流3 实现原理分析三、分布式限流算法1. 计数器算法2. 漏斗算法3....

2024-04-01

Redis简易延时队列的实现示例

目录一、背景二、实现思路1. 业务场景2. 实现思路三、实现代码1. 使用了两个注解类分别标记生产者类、生产者方法,消费者方法2. 生产者类具体实现一、背景在实际的业务场景中...

2024-04-01

Redis分布式锁解决超卖问题

目录一、使用redisTemplate中的setIfAbsent方法。二、使用Redisson解决(看门狗方式)2.1、实现原理2.2、SpringBoot集成Redisson2.2.1、添加pom.xml依赖2.2.2、注入RedissonCli...

2024-04-01

Redis队列和阻塞队列的实现

目录Redis队列 ListRedis阻塞队列redis 队列的优点是轻量级,业务足够简单时不需要使用rabbitMq这样专业的消息中间件;缺点是弹出队列中的元素时,即使该消息处理失败也无法再次...

2024-04-01

redis事务执行常用命令及watch监视详解

目录redis事务事务的常用命令事务的执行watch监视redis事务注意:我使用的版本是6.0.10,不同版本可能略有差别redis事务就是一组命令的集合,一个事务中所有命令都会序列化,按顺序...

2024-04-01

redisson锁tryLock的正确使用方式

目录redisson锁tryLock的使用方式一方式二总结redisson锁tryLock的使用方式一RLock lock = redissonClient.getLock("Export:create:" + Context.get().getCorpId());try {...

2024-04-01

详解Redis如何多规则限流和防重复提交

目录一、简介二、思考三、解决方法1. 使用 String结构 记录固定时间段内某用户IP访问某接口的次数2. 使用 Zset 进行存储,解决临界值访问问题3.实现多规则限流一、简介市面上...

2024-04-01

Spring Boot整合Redis实现订单超时处理问题

目录为什么使用Redis?准备工作创建订单实体类存储订单到Redis设置订单超时监控订单超时订阅订单超时消息总结随着电子商务的兴起,订单处理变得非常重要,而订单超时处理是其中一...

2024-04-01

Redis保证数据不丢失的两种方法

目录1.Redis 持久化1.1 RDB 持久化1.2 AOF 持久化1.3 混合持久化2.Redis 集群2.1 主从同步2.2 哨兵模式2.3 Redis Cluster小结前段时间表妹收到了小米秋招补录的面试邀请,一...

2024-04-01

Redis中LRU算法和LFU算法的区别小结

目录 一、LRULRU的实现二、LFU 一、LRULRU(最近最少使用):LRU策略基于"最近使用原则",即最近被访问的项目具有更高的保留优先级。当缓存空间已满,而需要插入新项目时,LRU策略会替...

2024-04-01

Redis缓存异常常用解决方案总结

目录前言1.缓存雪崩1.1、什么是缓存雪崩1.2、解决方案1、加锁排队2、数据预热3、双层缓存策略4、定时更新缓存策略5、设置不同的过期时间。2.缓存预热2.1、什么是缓存预热2....

2024-04-01

Redis哨兵监控的使用

目录1.简介(1)什么是哨兵(2)功能(3)启动2.运行流程(1)运行流程(2)故障迁移(failover)(3)使用建议1.简介(1)什么是哨兵哨兵是Redis的一种运行模式。它专注于对Redis实例(主节点、从节点)运行状...

2024-04-01

Window下对Redis进行开启与关闭的操作方法

目录前言1. 图文界面2. 命令行前言由于长期使用Linux界面,对于Window下的Redis,不知如何下手。特此记录该博文特别注意,刚下载好的Redis,如果需要配置密码,可以再该文件进行配置:r...

2024-04-01

使用redis获取自增序列号实现方式

目录前言项目实例1.SpringBoot2.springMVC总结前言Redis作为时下热门的缓存数据库,由于单线程、直接存取与内存中,所以速度很快很高效。redis的使用场景也非常多样化,常见的是...

2024-04-01

redis底层数据结构之skiplist实现示例

目录skiplist实现结构很像树形结构skiplist实现skiplist跳跃表,是一种有序数据结构,通过在每个节点中维持多个指向其他节点的指针,来达到快速访问节点的目的,redis使用skiplist...

2024-04-01

详解Redis如何保证接口的幂等性

目录背景常用的解决方式代码实现背景如何防止接口中同样的数据提交,以及如何保证消息不被重复消费,这些都是shigen在学习的过程中遇到的问题。今天,趁着在学习redis的间隙,我写...

2024-04-01

Ubuntu22.04 LTS 上安装Redis的过程

目录Ubuntu 22.04 LTS 上的Redis安装指南一、从源代码编译安装Redis二、通过apt包管理器安装Redis三、配置redis的端口、密码、IP总结Ubuntu 22.04 LTS 上的Redis安装指南Re...

2024-04-01

Redis常用命令集的使用

目录一、redis-cli连接redis服务1.1 无密码本地登录1.2 指定参数登录1.3 使用shell连接操作redis二、redis运维常用命令2.1、查看redis版本信息2.2、查看服务所有[部分]信息...

2024-04-01

Redis并发问题解决方案

目录前言1.分布式锁1.基于单个节点2.基于多个节点3.watch(乐观锁) 2.原子操作1.单命令操作2.Lua 脚本(多命令操作)3.事务1.执行步骤2.错误处理3.崩溃处理总结前言在多个客户...

2024-04-01

Redis高可用的三种实现方式

目录一、高可用概述1.1 高可用概述1.2 Redis高可用方案主从复制模式Redis Sentinel模式Redis Cluster模式1.3 常见高可用方案比较二、高可用实践-集群2.1 集群概述2.2 集群...

2024-04-01

Redis消息队列、阻塞队列、延时队列的实现

目录 一、普通队列使用redis的命令来模拟普通队列使用Java代码来实现普通队列:消费者SingleConsumer:二、Redis阻塞队列使用redis的brpop命令来模拟阻塞队列Java阻塞队列生产...

2024-04-01

Redis使用Lua脚本命令详解

目录Lua脚本Lua的数据类型eval命令evalsha命令其他不常用的命令将脚本加入缓存判断脚本是否被缓存清空脚本缓存强制终止当前脚本的执行Lua脚本redis可以支持lua脚本,可以使用...

2024-04-01

Redis持久化AOF示例详解

目录基础面试题什么是AOFAOF写后记录日志有哪些优劣AOF核心配置参数有哪些AOF断电后恢复的过程是什么进阶面试题AOF重写机制如何压缩文件体积AOF重写时是否会阻塞线程Redis...

2024-04-01

Redis抢单预热的实现示例

目录前言一、前期准备1、新建项目,结构如下 2、添加依赖二、编写 dao1、GoodsDao三、编写 service1、OrderService2、GoodsService3、GoodsServiceImpl4、OrderServiceImpl四...

2024-04-01

Redisson之lock()和tryLock()的区别及说明

目录lock()和tryLock()的区别和原理解析tryLock()lock()总结lock()和tryLock()的区别和原理解析在Redisson中 lock() 方法 与 tryLock() 方法是有区别的!我们先来阐述两者的...

2024-04-01

Redis反序列化失败的解决方法

目录什么是序列化和反序列化问题原序列化配置修改配置解决方法什么是序列化和反序列化序列化是将对象转换为字符串以便存储传输的一种方式。而反序列化恰好就是序列化的逆过...

2024-04-01

Redis异步队列的实现及应用场景

目录一、简介1 异步队列2 异步队列与同步队列二、Redis 实现异步队列1 利用 Redis 的 List 数据类型实现异步队列2 利用 Redis 的 Pub/Sub 功能实现异步队列3 利用 Redis 的...

2024-04-01

redis key键过期删除策略及淘汰机制探究

目录redis过期删除删除策略淘汰机制redis过期删除redis的键可以设置过期时间,但是并不是每个键一到过期时间就会立即删除,redis不可能给每个设置过期时间的key上添加一个定时...

2024-04-01

redis底层数据结构之ziplist实现详解

目录ziplist实现ziplist结构entry的结构使用ziplist的数据类型ziplist实现注意:我使用的版本是6.0.10,不同版本可能略有差别ziplist又叫做压缩列表,使用一段连续的内存来存储数...

2024-04-01

Redis分布式锁与Redlock算法实现

目录一、简介1. Redis的分布式锁2. 分布式锁的实现原理二、Redis 分布式锁使用场景1. 分布式系统中数据资源的互斥访问2. 分布式环境中多个节点之间的协作3. 常见场景及应用...

2024-04-01

redis单节点安装与配置方式

目录redis单节点安装与配置执行以下命令来获取redis安装包并编译执行以下命令启动redis启动后如图所示此时可以通过redis的客户端连接总结redis单节点安装与配置redis是应用...

2024-04-01

IDEA初次连接Redis配置的实现

目录第一步、引入jedis依赖第二步、测试Jedis连接类第三步、修改Redis配置文件,添加权限验证第四步、虚拟机放开redis端口(6379)第五步、修改redis配置文件中的 bind,支持远程...

2024-04-01

Redis批量删除指定前缀的Key两种方法

目录前言redis-cli编码方式总结前言批量删除指定前缀的Key有两中方法,一种是借助 redis-cli,另一种是通过 SCAN 命令来遍历所有匹配前缀的 key,并使用 DEL 命令逐个删除它们。r...

2024-04-01

redis集群主从节点自动切换方式

目录redis集群主从节点自动切换为什么解决Redis的主从复制主从复制一主二从一主二从搭建复制原理总结redis集群主从节点自动切换最近在将redis作为数据库使用(redis中存放大...

2024-04-01

详解Redis中的简单动态字符串和C字符串的区别

目录什么是 Redis简单动态字符串SDS 的定义SDS 和 C 字符串的区别动态调整内存大小C 字符串SDS二进制安全C 字符串SDS长度获取复杂度惰性空间释放C 字符串SDS兼容性C 字符串...

2024-04-01

深入理解Redis7哨兵模式(保姆级教学)

目录哨兵是什么哨兵的作用案例演示前期准备案例步骤哨兵 启动哨兵运行流程和选举原理主观下线客观下线一定一定要把云服务器的防火墙打开一定要!!!!!!!!!否则不成功!!!!!!!!!哨兵是什么相当于...

2024-04-01

Windows系统设置Redis服务使其开机自启动

目录引言1.redis启动命令2.redis开机自动启动总结引言在redis安装目录,例:图示地方输入cmd,然后回车,或按住shift,选择在此处打开黑窗口输入redis-cli并回车。(redis-cli是客户端...

2024-04-01
返回顶部
顶部