redis 简述redis 基本是后端开发的标配了,特别是对速度要求较高的业务,那么 redis 基本是标配了。在业务中,redis 在手机验证码,一些热点 key 方面有其巨大的优势。数据一致性问题使用缓存必然会遭遇数据一致性问题,所谓数据一致性即在数据在更改过程中数据库和缓存会存在一段时间数据不一致。针对这个问题,我们可以针对性的使用相应的方案来解决这个 ......
32
0
0
2024-10-01
大家好,我是苏三,又跟大家见面了。前言缓存在我们日常工作中,经常会使用,但如果用不好坑也挺多的。这篇文章总结了我工作中使用缓存遇到过的7个坑,还是非常有参考价值得,希望对你会有所帮助。1 缓存穿透大部分情况下,加缓存的目的是:为了减轻数据库的压力,提升系统的性能。一般情况下,如果有用户请求过来,先查缓存,如果缓存中存在数据,则直接返回。如果缓存中不存在,则再 ......
39
0
0
2024-09-26
本文收集了一些 Redis 使用中经常遇到的一些问题,和与之相对应的解决方案,这些内容不但会出现在实际工作中,也是面试的高频问题,接下来一起来看。缓存雪崩缓存雪崩是指在短时间内,有大量缓存同时过期,导致大量的请求直接查询数据库,从而对数据库造成了巨大的压力,严重情况下可能会导致数据库宕机的情况叫做缓存雪崩。我们先来看下正常情况下和缓存雪崩时程序的执行流程图, ......
42
0
0
2024-09-21
前言又到了一年一度的金三银四了,大家在面试的时候一定被问到过Redis缓存问题吧。可能有些初学者对“缓存击穿、缓存穿透、缓存雪崩”这几个名词感到陌生,或者了解过但是一时半会没办法理解。没关系,希望通过本文可以让你轻松理解这些概念并掌握其解决方案,然后在即将到来的金三银四面试中对你有所帮助。面试题剖析花里胡哨的名词刚开始我以为“缓存击穿、缓存穿透、缓存雪崩”说 ......
108
0
0
2024-08-20
金三银四求职季,我特地为大家汇总了涵盖Java基础、线程、并发编程及JVM等核心领域的面试题集,希望能为正在准备或即将参与面试的小伙伴们提供些许帮助。以下是本文精心挑选的15道Redis面试题。1、为什么要使用Redis做缓存?主要是Redis的功能强大。相较于其他缓存产品,Redis主要具备以下几个优势:数据结构丰富:Redis支持多种数据类型,包括字符串 ......
112
0
0
2024-08-20
Redis,作为内存数据结构存储的佼佼者,其高性能表现一直备受赞誉。那么,Redis究竟是如何实现这一点的呢?接下来,我们将更深入地探讨其背后的关键技术,并提供进一步的优化策略。提升编程效率的利器: 解析Google Guava库之集合篇RangeSet范围集合(五)一、内存存储与数据结构设计优化Redis的高性能表现与其内存存储方式以及数据结构设计密切相关 ......
220
0
0
2024-06-25
前言首先,Redis作为一个优秀开源的内存数据结构存储系统,可以用作数据库、缓存和消息中介。它支持多种数据结构,包括字符串、哈希表、列表、集合、有序集合等。当我们谈论Redis中的“哈希表”时,我们通常是指Redis用作数据结构之一的哈希数据类型,而不是Redis内部用于存储所有键值对的全局哈希表实现。一、什么是Redis的全局哈希表Redis的全局哈希表是 ......
242
0
0
2024-06-25
大家好,我是小麦。前面给大家分享了几款我常年在Mac上使用的系统工具,不论是办公、编程、设计或者是其他相关的都是有涉猎。收到一些同学的反馈,在咨询是否有Redis相关的可视化客户端工具。今天我就来分享几款个人使用过的可视化工具,这里面的工具都各具优势,主要看个人使用的场景而定,话不多说开始不如正文。RedRed是Mac上一款非常轻巧,且具备基础功能的Redi ......
283
0
0
2024-06-06
Redis Lua 脚本调试是一种强大的工具,可以帮助您快速发现和解决Lua脚本中的问题。它允许您在运行脚本时逐步执行脚本,并检查每个步骤的结果。两种调试模式从Redis 3.2开始,内置了 Lua debugger(简称LDB),使用Lua debugger可以很方便的对我们编写的Lua脚本进行调试异步模式 --ldb开启 lua dubegger ,将会 ......
542
0
0
2024-03-26
简介市面上很多介绍redis如何实现限流的,但是大部分都有一个缺点,就是只能实现单一的限流,比如1分钟访问1次或者60分钟访问10次这种,但是如果想一个接口两种规则都需要满足呢,我们的项目又是分布式项目,应该如何解决,下面就介绍一下redis实现分布式多规则限流的方式。思考如何一分钟只能发送一次验证码,一小时只能发送10次验证码等等多种规则的限流如何防止接口 ......
486
0
0
2024-03-22
说明:此次案例采用的redis是cluster模式。网络模型采用 epoll 模式本篇文章主要讲解 ,从redis原理的角度了解一个 set 命令从redis client发出到 redis server端接收到客户端请求的时候,到底经历了哪些过程?同样会附带了解下面几个问题redis的执行原理Redis cluster集群模式的运行原理同样解释了为什么re ......
527
0
0
2024-03-10
介绍RedisSearch 是一个基于 Redis 的搜索引擎模块,它提供了全文搜索、索引和聚合功能。通过 RedisSearch,可以为 Redis 中的数据创建索引,执行复杂的搜索查询,并实现高级功能,如自动完成、分面搜索和排序。利用 Redis 的高性能特点,RedisSearch 可以实现高效的搜索和实时分析。对于微服务架构来说,RedisSearc ......
497
0
0
2024-03-02
缓存夺命连环问为什么要用缓存?用缓存,主要有两个用途:高性能、高并发。高性能假设这么个场景,你有个操作,一个请求过来,吭哧吭哧你各种乱七八糟操作 mysql,半天查出来一个结果,耗时 600ms。但是这个结果可能接下来几个小时都不会变了,或者变了也可以不用立即反馈给用户。那么此时咋办?缓存啊,折腾 600ms 查出来的结果,扔缓存里,一个 key 对应一个 ......
514
0
0
2024-02-23
Redis 全文搜索是依赖于 Redis 官方提供的 RediSearch 来实现的。RediSearch 提供了一种简单快速的方法对 hash 或者 json 类型数据的任何字段建立二级索引,然后就可以对被索引的 hash 或者 json 类型数据字段进行搜索和聚合操作。这里我们把被索引的 hash 或者 json 类型数据叫做源数据。本文大纲如下,使用体 ......
436
0
0
2024-02-17
​什么是bigkey?bigkey简单来说就是存储本身的key值空间太大,或者hash,list,set等存储中value值过多。具体来衡量的话大key是:String 类型值大于10KB。Hash、List、Set、Zset类型元素个数超过5000个。bigkey引发的问题阻塞工作线程:如果我们使用del命令删除大key,会阻塞工作线程这样就没有办法处理其 ......
465
0
0
2024-02-13