经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
 Redis

Redisson 限流器源码分析

Redi on 限流器源码分析 对上篇文章网友评论给出问题进行解答:redis 的key 是否会过期 可以先阅读上篇文章: redis + AOP + 自定义注解实现接口限流 - 古渡蓝按 - 博客园 (cnblogs.com) 注解AOP 代码部分提取 调用Reids工具类的ra...[2024/6/5]

(三)Redis 线程与IO模型

1、Redis 单线程 通常说 Redis 是单线程,主要是指 Redis 的网络 IO 和键值对读写是由一个线程来完成的,其他功能,比如持久化、异步删除、集群数据同步等,是由额外的线程执行的,所以严格来说,Redis 并不是单线程。 多线程开发会不可避免的带来并发控制和资源开销的问题,如果没...[2024/6/5]

分享5款.NET开源免费的Redis客户端组件库

前言 今天大姚给大家分享5款.NET开源、免费的Redis客户端组件库,希望可以帮助到有需要的同学。 StackExchange.Redis StackExchange.Redis是一个基于.NET的高性能Redis客户端,提供了完整的Redis数据库功能支持,并且具有多节点支持、异步编程模型...[2024/5/31]

StackExchange.Redis跑起来,为什么这么溜?

StackExchange.Redis 是一个高性能的 Redis 客户端库,主要用于 .NET 环境下与 Redis 服务器进行通信,大名鼎鼎的stackoverflow 网站就使用它。它使用异步编程模型,能够高效处理大量请求。支持 Redis 的绝大部分功能,包括发布/订阅、事务、Lua ...[2024/5/27]

RediSearch的简单使用与总结

RediSearch的简单使用与总结

前言 之前就有考虑过想要研究下RediSearch,号称高性能全文索引的功能,这几天闲来无事调研了一番。 RediSearch 介绍 RediSearch 是 Redis Labs 提供的一款强大且高效的搜索和全文索引引擎。它是一个基于 Redis 的模块,允许用户在 Redis 数据库中进行...[2024/5/15]

Redis网络模型

主从复制原理 建立连接 从节点在配置了 replicaof 配置了主节点的ip和port 从库执行replicaof 并发送psync命令 同步数据到从库 主库bgsave生成RDB文件,并发送给从库,同时为每一个slave开辟一块 replication buffer 缓冲区记...[2024/5/13]

.NET 缓存:内存缓存 IMemoryCache、分布式缓存 IDistributedCache(Redis)

.NET缓存里分了几类,主要学习内存缓存、分布式缓存 一、内存缓存 IMemoryCache 1、Program注入缓存 builder.Services.AddMemoryCache(); 2、相关方法及参数 Get、TryGetValue、GetOrCreate、GetOrCreate...[2024/5/11]

记一次线上Redis内存占用过高、大Key问题的排查

记一次线上Redis内存占用过高、大Key问题的排查

问题背景 在一个风和日丽的下午,公司某项目现场运维同学反馈,生产环境3个Redis的Sentinel集群节点内存占用都很高,达到了17GB的内存占用量。 稍加思索,应该是某些Key的Value数据体量过大,占用了过多的内存空间,我们在使用Redis的过程中,单个Value或者单个集合中的元素应...[2024/5/11]

经验之谈:我为什么选择了这样一个激进的缓存大Key治理方案

一、引言 本文将结合我的一次Redis大Key的治理经验,来浅谈一下缓存大Key的治理方案选择。文中主要包括缓存大Key基础知识、大Key治理方案选择、大Key治理案例等,适合有一定开发经验的开发者阅读,希望对大家有帮助。 二、缓存大Key基础知识 2.1 大Key的标准 集合类型元素数量&g...[2024/5/6]

【进阶篇】基于 Redis 实现分布式锁的全过程

目录前言一、关于分布式锁二、RedLock 红锁(不推荐)三、基于 setIfAbsent() 方法四、使用示例4.1RedLock 使用4.2setIfAbsent() 方法使用五、文章小结 前言 这一篇文章拖了有点久,虽然在项目中使用分布式锁的频率比较高,但整理成文章发布出来还是花了一点...[2024/5/6]

Higress 基于自定义插件访问 Redis

简介 基于 wasm 机制,Higre 提供了优秀的可扩展性,用户可以基于 Go/C++/Rust 编写 wasm 插件,自定义请求处理逻辑,满足用户的个性化需求,目前插件已经支持 redis 调用,使得用户能够编写有状态的插件,进一步提高了 Higre 的扩展能力。 文档在插件中调用...[2024/4/29]

美团二面:如何保证Redis与Mysql双写一致性?连续两个面试问到了!

引言 Redis作为一款高效的内存数据存储系统,凭借其优异的读写性能和丰富的数据结构支持,被广泛应用于缓存层以提升整个系统的响应速度和吞吐量。尤其是在与关系型数据库(如MySQL、PostgreSQL等)结合使用时,通过将热点数据存储在Redis中,可以在很大程度上缓解数据库的压力,提高整体系统...[2024/4/17]

聊聊 Redis Stream

Redis Stream 是 Redis 5.0 版本中引入的一种新的数据结构,它用于实现简单但功能强大的消息传递模式。 这篇文章,我们聊聊 Redis Stream 基本用法 ,以及如何在 SpringBoot 项目中应用 Redis Stream 。 1 基础知识 Redis Str...[2024/4/15]

淘宝二面:MySQL里有2000万条数据,但是Redis中只存20万的数据,如何保证redis中的数据都是热点数据?

引言 在当今互联网领域,尤其在大型电商平台如淘宝这样的复杂分布式系统中,数据的高效管理和快速访问至关重要。面对数以千万计的商品、交易记录以及其他各类业务数据,如何在MySQL等传统关系型数据库之外,借助内存数据库Redis的力量,对部分高频访问数据进行高效的缓存处理,是提升整个系统性能的关键一环...[2024/4/15]

面试官:Redis如何实现延迟任务?

面试官:Redis如何实现延迟任务?

延迟任务(Delayed Task)是指在未来的某个时间点,执行相应的任务。也就是说,延迟任务是一种计划任务,它被安排在特定的时间后执行,而不是立即执行。 延迟任务的常见使用场景有以下几个: 定时发送通知或消息: 发送定时短信、邮件或应用内消息,如注册确认、订单状态更新、促销活动通知等...[2024/4/10]

高可用之战:Redis Sentinal(哨兵模式) - Hello-Brand

★ Redis24篇集合 1 背景 在我们的《Redis高可用之战:主从架构》篇章中,介绍了Redis的主从架构模式,可以有效的提升Redis服务的可用性,减少甚至避免Redis服务发生完全宕机的可能。 它主要包含如下能力: 1. 故障隔离和恢复:无论主节点或者从节点宕机,其他节点依然可以...[2024/4/10]

如何保证MySQL和Redis数据一致性?

如何保证MySQL和Redis数据一致性?

背景 在高并发的业务场景中,因为MySQL数据库是操作磁盘效率比较低,因此大多数情况下数据库都是高并发系统的瓶颈。因为Redis操作数据是在内存中进行,所以就需要使用Redis做一个缓存。让请求先访问到Redis,而不是直接访问MySQL数据库。效果图如下 查询数据 上面的业务场景,就是...[2024/4/3]

Redis高可用之战:主从架构 - Hello-Brand

★ Redis24篇集合 1 主从模式介绍 在笔者的另外两篇文章 《Redis系列:RDB内存快照提供持久化能力》、《Redis稳定性之战:AOF日志支撑数据持久化》中,我们介绍了Redis中的数据持久化技术,包括 RDB快照 和 AOF日志 。有了这两个利器,我们再也不用担心机器宕机,数据丢...[2024/3/29]

美团一面:项目中使用过Redis吗?我说用Redis做缓存。他对我哦了一声

引言 Redis,作为一种开源的、基于内存且支持持久化的键值存储系统,以其卓越的性能、丰富灵活的数据结构和高度可扩展性在全球范围内广受欢迎。Redis不仅提供了一种简单直观的方式来存储和检索数据,更因其支持数据结构如字符串、哈希、列表、集合、有序集合等多种类型,使得其在众多场景下表现出强大的适用...[2024/3/29]

京东二面:Redis为什么快?我说Redis是纯内存访问的,然后他对我笑了笑。。。。。。

引言 Redis是一个高性能的开源内存数据库,以其快速的读写速度和丰富的数据结构支持而闻名。作为一个轻量级、灵活的键值存储系统,Redis在各种应用场景下都展现出了惊人的性能优势。无论是作为缓存工具、会话管理组件、消息传递媒介,还是在实时数据处理任务和复杂的分布式系统架构中,Redis均扮演了至...[2024/3/29]

超高并发下,Redis热点数据风险破解 - Hello-Brand

★ Redis24篇集合 1 介绍 作者是互联网一线研发负责人,所在业务也是业内核心流量来源,经常参与 业务预定、积分竞拍、商品秒杀等工作。 近期参与多场新员工的面试工作,经常就 『超高并发场景下热点数据』 可用性保障与候选人进行讨论。 本文聚焦一些关键点技术进行讨论,并总结一些热点场景...[2024/3/25]

为什么延迟删除可以保证MYSQL 与redis的一致性?

看过很多保持MYSQL 与redis保持一致性的文章都提到了延迟删除,其实脱离任何业务场景的设计都是不切实际的,所以我会本着一个通用的读写场景去分析为什么延迟删除大概率可以保证MYSQL与redis的最终一致。 通常的读写场景 通常在使用redis作为读写缓存时,我们采用的是cache asi...[2024/3/22]

Garnet发布 Redis不再是唯一选择

Garnet 是 Microsoft Research 的远程缓存存储,提供强大的性能(吞吐量和延迟)、可扩展性、存储、恢复、集群分片、密钥迁移和复制功能。 Garnet 可以与现有的 Redis 客户端配合使用。 Garnet 是 Microsoft Research 推出的一种新型远程...[2024/3/20]

Garnet: 力压Redis的C#高性能分布式存储数据库

今天看到微软研究院开源了一个新的C#项目,叫Garnet,它实现了Redis协议,可以直接将Redis替换为Garnet,客户端不需要任何修改。根据其官网的信息,简单的介绍一下它。 开源仓库地址:https: github.com/microsoft/garnet 文档地址:https: m...[2024/3/20]

Redis集群模式和常用数据结构

一、Redis 支持三种主要的集群模式 主从复制模式(Master-Slave Replication): 在这种模式下,主节点(Master)负责处理写入操作,而从节点(Slave)则是主节点的副本,用于处理读取操作和提供数据冗余。这种模式通过复制主节点的数据到多个从节点来提高数据的可...[2024/3/20]

Redis 常见数据类型(对象类型)和应用案列

前言: 每次你在游戏中看到玩家排行榜,或者在音乐应用中浏览热门歌单,有没有想过这个排行榜是如何做到实时更新的?当然,依靠 Redis 即可做到。 在技术领域,我们经常听到「键值存储」 这个词。但在 Redis 的世界里,这只是冰山一角。Redis 的对象,不仅仅是简单的数据,它们是为各种任务...[2024/3/11]

Redis系列:RDB内存快照提供持久化能力 - Hello-Brand

★ Redis24篇集合 1 介绍 从上一篇的 《深刻理解高性能Redis的本质》 中可以知道, 我们经常在数据库层上加一层缓存(如Redis),来保证数据的访问效率。 这样性能确实也有了大幅度的提升,因为从内存中取数远比从磁盘中快的多,但是本身Redis也是一层服务,也存在宕机、故障的可能...[2024/3/7]

Redisson分布式锁

Redi on分布式锁 来自Githup官方文档的介绍: Redi on是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括(BitSet, Set, Multimap,...[2024/3/1]

面试必备:一线大厂Redis缓存设计规范与性能优化 - 江-小北

说在前面 你是否在使用Redis时,不清楚Redis应该遵循的设计规范而苦恼? 你是否在Redis出现性能问题时,不知道该如何优化而发愁? 你是否被面试官拷问过Redis的设计规范和性能优化而回答不出来 别慌,看这篇文章就行了 本文,已收录于,我的技术网站 aijiangsir.com...[2024/3/1]

【进阶篇】使用 Redis 实现分布式缓存的全过程思考(一)

目录前言一、关于缓存二、基本数据结构三、缓存注解3.1自定义注解3.2定义切点(拦截器)3.3 AOP 实现3.4使用示例四、数据一致性4.1缓存更新策略4.2缓存读写过程五、高可用5.1缓存穿透5.2缓存击穿5.3缓存雪崩5.4Redis 集群六、文章小结 前言 写在前面,让我们从 3 个...[2024/2/28]

Redis加Lua脚本实现分布式锁

先讲一下为什么使用分布式锁: 在传统的单体应用中,我们可以使用Java并发处理相关的API(如ReentrantLock或synchronized)来实现对共享资源的互斥控制,确保在高并发情况下同一时间只有一个线程能够执行特定方法。然而,随着业务的发展,单体应用逐渐演化为分布式系统,多线程、多进...[2024/2/28]

Redis分布式锁的正确使用姿势

前言 分布式锁在日常开发中,用处非常的多。包括但不限于抢红包,秒杀,支付下单,幂等,等等场景。 分布式锁的实现方式有多种,包括redis实现,mysql实现,zookeeper实现等等。而其中redis非常适合作为分布式锁使用,并且在各个公司都大规模的使用。 本文将由浅入深的探究Redis分...[2024/2/26]

Redis的Java客户端-Jedis

Redis的Java客户端-Jedis 在Redis官网中提供了各种语言的客户端,地址:https: redis.io/doc client 其中Java客户端也包含很多: 标记为?的就是推荐使用的java客户端,包括: Jedis和Lettuce:这两个主要是提供了Redis命...[2024/2/5]

【经典问题】mysql和redis数据一致性问题

前言 MySQL和Redis数据一致性算是个很经典的问题,在之前也看到过很多相关的文章,最近心血来潮,想把一致性问题的解决方案和存在问题都总结一下。 不推荐方案 1 先更新MySQL,再更新Redis。 如上图有两个请求要同时进行更新操作,在并发情况下,B请求虽然更新时间晚于A请求,但是可...[2024/1/5]

redis + AOP + 自定义注解实现接口限流

限流介绍 限流(rate limiting) ? 是指在一定时间内,对某些资源的访问次数进行限制,以避免资源被滥用或过度消耗。限流可以防止服务器崩溃、保证用户体验、提高系统可用性。 限流的方法有很多种,常见的有以下几种: 漏桶算法: ? 漏桶算法通过一个固定大小的漏桶来模...[2024/1/5]

架构与思维:如何应对Redis热Key? - Hello-Brand

★ Redis系列文章 Redis系列1:深刻理解高性能Redis的本质 Redis系列2:数据持久化提高可用性 Redis系列3:高可用之主从架构 Redis系列4:高可用之Sentinel(哨兵模式) Redis系列5:深入分析Cluster 集群模式 追求性能极致:Redis6...[2023/12/26]

从Redis读取.NET Core配置

在本文中,我们将创建一个自定义的.NET Core应用配置源和提供程序,用于从Redis中读取配置。在此之前,您需要稍微了解一些.NET Core配置提供程序的工作原理,相关的内容可以在Microsoft开发者官网搜索到。另外您可能还需要了解一些Redis的基础知识,比如Redis的基础数据类型...[2023/12/26]

Redis全文搜索教程之创建索引并关联源数据

Redis全文搜索教程之创建索引并关联源数据

Redis 全文搜索是依赖于 Redis 官方提供的 RediSearch 来实现的。RediSearch 提供了一种简单快速的方法对 hash 或者 json 类型数据的任何字段建立二级索引,然后就可以对被索引的 hash 或者 json 类型数据字段进行搜索和聚合操作。 这里我们把被索引的...[2023/12/21]

nginx+lua+redis实现灰度发布

前言: 授人以鱼不如授人以渔.先学会用,在学原理,在学创造,可能一辈子用不到这种能力,但是不能不具备这种能力。这篇文章主要是沉淀使用nginx+lua+redis实现灰度,当我们具备了这种能力,随时可以基于这种能力和思想调整实现方案:比如nginx+lua+(其他数据源)、nginx+(其他脚本...[2023/12/18]

基于Redis的简易延时队列

基于Redis的简易延时队列 一、背景 在实际的业务场景中,经常会遇到需要延时处理的业务,比如订单超时未支付,需要取消订单,或者是用户注册后,需要在一段时间内激活账号,否则账号失效等等。这些业务场景都可以通过延时队列来实现。 最近在实际业务当中就遇到了这样的一个场景,需要实现一个延时队列,用来...[2023/12/11]

.NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试

2023年11月15日,对.net的开发圈是一个重大的日子,.net 8.0正式版发布。 圈内已经预热了有半个月有余,性能不断超越,开发体验越来越完美,早在.net 5.0的时候就各种吹风Aot编译,直到6.0 7.0使用仍然比较麻烦,我个人比较期待本次更新的aot体验。 有的群友几个小时都...[2023/11/17]

基于C# Socket实现的简单的Redis客户端

前言     Redis是一款强大的高性能键值存储数据库,也是目前NOSQL中最流行比较流行的一款数据库,它在广泛的应用场景中扮演着至关重要的角色,包括但不限于缓存、消息队列、会话存储等。在本文中,我们将介绍如何基于C# Socket来实现一个简单的Red...[2023/11/15]

Redis 哨兵模式的原理及其搭建

1.Redis哨兵 Redis提供了哨兵(Sentinel)机制来实现主从集群的自动故障恢复。 1.1.哨兵原理 1.1.1.集群结构和作用 哨兵的结构如图: 哨兵的作用如下: 监控:Sentinel 会不断检查您的master和slave是否按预期工作。 自动故障恢复:如果...[2023/11/10]

Redis创始人开源最小聊天服务器,仅200行代码,几天功夫已获2.8K Star!

中午时候,在技术交流群里聊起关于Redis创始人的一些趣事,比如离开Redis之后,去写科幻小说之类的。 因为好奇科幻小说,TJ君就去搜索了一下。结果一搜,发现Redis作者最近居然又搞了个新活儿! 世界上最小的聊天服务器 这次Redis作者的新开源项目名叫:SmallChat。 从关于内容...[2023/11/6]

美团面试:Redis 除了缓存还能做什么?可以做消息队列吗?

这是一道面试中常见的 Redis 基础面试题,主要考察求职者对于 Redis 应用场景的了解。 即使不准备面试也建议看看,实际开发中也能够用到。 内容概览: Redis 除了做缓存,还能做什么? 分布式锁:通过 Redis 来做分布式锁是一种比较常见的方式。通常情况下,我们都是基于 R...[2023/11/3]

Redis7新特性简介及十大数据类型

Redis7新特性简介及十大数据类型

Redis是基于内存的K-V键值对内存数据库 浅谈Redis7新特性 主要是自身底层性能和资源利用率上的提高和优化。 多AOF文件支持 config命令增强 限制客户端内存使用 listpack紧凑列表调整 访问安全性增强 Redis Funct...[2023/11/1]

Redis中的缓存雪崩、缓存击穿、缓存穿透问题

1. 什么是缓存雪崩 当我们提到缓存系统中的问题,缓存雪崩是一个经常被讨论的话题。缓存雪崩是指在某一时刻发生大量的缓存失效,导致瞬间大量的请求直接打到了数据库,可能会导致数据库瞬间压力过大甚至宕机。尤其在高并发的系统中,这种情况会导致连锁反应,整个系统可能会崩溃。 1.1 缓存雪崩的成因 大量...[2023/10/19]

分享一个Redis自带的压测工具:redis-benchmark

前言 今天给xdm分享一个Redis自带的压测工具:redis-benchmark。 介绍 redis-benchmark 是一个用于测试 Redis性能的基准测试工具,可以帮助开发人员评估和比较 Redis 在不同配置或负载情况下的吞吐量和延迟。 使用 redis-benchmark 可以...[2023/10/19]

探索Redis与MySQL的双写问题

本文已收录至GitHub,推荐阅读 ?? Java随想录 微信公众号:Java随想录 原创不易,注重版权。转载请注明原作者和原文链接 目录双写一致问题缓存读写策略Cache-Aside Pattern(旁路缓存模式)Read/Write Through Pattern(读写穿透模式)W...[2023/10/13]

4款.NET开源的Redis客户端驱动库

前言 今天给大家推荐4款.NET开源免费的Redis客户端驱动库(以下排名不分先后)。 Redis是什么? Redis全称是REmote DIctionary Service,即远程字典服务。Redis 是一个使用C语言编写的、开源的(遵守 BSD 协议)、支持网络、可基于内存亦可持久化的日志...[2023/10/13]

357
2
记录数:732 页数:1/1512345678910下一页尾页
 友情链接:直通硅谷  直通硅谷 怎么样 mac软件下载
加载更多