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

2023-06-07:Redis 持久化方式有哪些?以及有什么区别?

2023-06-07:Redis 持久化方式有哪些?以及有什么区别? 答案2023-06-07: Redis提供了两种持久化机制:RDB和AOF。 RDB RDB持久化是将Redis当前进程中的数据生成快照并保存到硬盘的过程。快照指的是Redis在某一时刻的内存状态的记录,类似于拍照一...[2023/6/8]

通过redis学网络(1)-用go基于epoll实现最简单网络通信框架

本系列主要是为了对redis的网络模型进行学习,我会用golang实现一个reactor网络模型,并实现对redis协议的解析。 系列源码已经上传github https: github.com/HobbyBear/tinyredi tree/chapter1 redis的网络模...[2023/6/7]

k8s实战案例之部署redis单机和redis cluster - Linux-1874

1、在k8s上部署redis单机 1.1、redis简介 redis是一款基于BSD协议,开源的非关系型数据库(nosql数据库),作者是意大利开发者Salvatore Sanfilippo在2009年发布,使用C语言编写;redis是基于内存存储,而且是目前比较流行的键值数据库(key-val...[2023/6/7]

Redis系列14:使用List实现消息队列 - Hello-Brand

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

redis.conf 7.0 配置和原理全解,生产王者必备

5.5 redis.conf 配置详解 我是 Redis, 当程序员用指令 ./redis-server /path/to/redis.conf 把我启动的时候,第一个参数必须是redis.conf 文件的路径。 这个文件很重要,就好像是你们的 DNA,它能控制我的运行情况,不同的配置会有不同...[2023/5/30]

Redis系列13:分布式锁实现 - Hello-Brand

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

Redis内存兜底策略——内存淘汰及回收机制

Redis内存兜底策略——内存淘汰及回收机制 Redis内存淘汰及回收策略都是Redis内存优化兜底的策略,那它们是如何进行兜底的呢?先来说明一下什么是内存淘汰和内存回收策略: Redis内存淘汰:当Redis的内存使用超过配置的限制时,根据一定的策略删除一些键,以释放内存空间 Redis内存...[2023/5/25]

2023-05-24:为什么要使用Redis做缓存?

2023-05-24:为什么要使用Redis做缓存? 答案2023-05-24: 缓存的好处 买啤酒和喝啤酒的例子可以帮助我们理解缓存的好处。 假设你在超市里买了一箱啤酒,如果你需要每次想喝啤酒就去超市购买,无疑会浪费很多时间和精力。而如果你将一部分啤酒放在家中的冰箱里,每次想喝啤酒时就...[2023/5/25]

一次redis主从切换导致的数据丢失与陷入只读状态故障

背景 最近一组业务redis数据不断增长需要扩容内存,而扩容内存则需要重启云主机,在按计划扩容升级执行主从切换时意外发生了数据丢失与master进入只读状态的故障,这里记录分享一下。 业务redis高可用架构 该组业务redis使用的是一主一从,通过sentinel集群实现故障时的自动主从切换...[2023/5/22]

Redis 高级特性 Redis Stream使用

Redis 高级特性 Redis Stream使用

Redis Stream 简介 Redis Stream 是 Redis 5.0 版本新增加的数据结构。 Stream从字面上看是流类型,但其实从功能上看,应该是Redis对消息队列(MQ,Me age Queue)的完善实现。下文称Stream为队列 Stream 出现原因: Str...[2023/5/19]

Redis基础命令汇总,看这篇就够了

本文首发于公众号:Hunter后端 原文链:Redis基础命令汇总,看这篇就够了 本篇笔记将汇总 Redis 基础命令,包括几个常用的通用命令,和各个类型的数据的操作,包括字符串、哈希、列表、集合、有序集合等在内的基本操作。 以下是本篇笔记目录: 通用命令 字符串命令 哈希命令 列表...[2023/5/15]

Redis数据结构一之对象的介绍及各版本对应实现

Redis数据结构一之对象的介绍及各版本对应实现

本文首发于公众号:Hunter后端 原文链接:Redis数据结构一之对象的介绍及各版本对应实现 本篇笔记开始介绍 Redis 数据结构的底层实现。 当我们被问到 Redis 中有什么数据结构,或者说数据类型,我们可能会说有字符串、列表、哈希、集合、有序集合。 其实这几种数据类型在 R...[2023/5/15]

聊一聊redis十种数据类型及底层原理

聊一聊redis十种数据类型及底层原理

概述 Redis 是一个开源的高性能键值数据库,它支持多种数据类型,可以满足不同的业务需求。本文将介绍 Redis 的10种数据类型,分别是 string(字符串) hash(哈希) list(列表) set(集合) zset(有序集合) stream(流) geospatial(地理) bi...[2023/5/10]

知乎问题:如何说服技术老大用 Redis ?

这个问题很微妙,可能这位同学内心深处,觉得 Redis 是所有应用缓存的标配。 缓存的世界很广阔,对于应用系统来讲,我们经常将缓存划分为本地缓存和分布式缓存。 本地缓存 :应用中的缓存组件,缓存组件和应用在同一进程中,缓存的读写非常快,没有网络开销。但各应用或集群的各节点都需要维护自己的...[2023/5/8]

【Redis】常用命令介绍

【Redis】常用命令介绍

一、Redis常用基本命令 官方文档:https: redis.io/command 参考文档:http: redisdoc.com/ #可以使用help命令查看各redis命令用法 [root@Client-Ubuntu-1804-250:~]# redis-cli -a redi...[2023/5/8]

这可能是最全面的Redis面试八股文了

这可能是最全面的Redis面试八股文了

Redis连环40问,绝对够全! Redis是什么? Redis(Remote Dictionary Server)是一个使用 C 语言编写的,高性能非关系型的键值对数据库。与传统数据库不同的是,Redis 的数据是存在内存中的,所以读写速度非常快,被广泛应用于缓存方向。Redis可以将数据写...[2023/4/26]

在Linux上安装redis7

1.检测虚拟机环境 1.1 bit检测命令:getconf LONG_BIT(建议使用64bit做开发) 1.2 gcc环境检测:gcc -v 如果不具备gcc环境,则使用yum -y install gcc- c++命令进行c++环境的安装 2.开始安装 2.1 下载redis: 进...[2023/4/26]

详解Redis三大集群模式,轻松实现高可用!

1. Redis集群简介 1.1 什么是Redis集群 Redis集群是一种通过将多个Redis节点连接在一起以实现高可用性、数据分片和负载均衡的技术。它允许Redis在不同节点上同时提供服务,提高整体性能和可靠性。根据搭建的方式和集群的特性,Redis集群主要有三种模式:主从复制模式(Ma...[2023/4/24]

Redis - 数据类型映射底层结构

简介 从数据类型上体现就是,同一个数据类型,在不同的情况下会使用不同的编码类型,底层所使用的的数据结构也不相同。 字符串对象 字符串对象的编码可以是 int、raw 和 embstr 三者之一。 embstr 编码是专门用于保存简短字符串的一种优化编码方式,与 raw 编码会调用两次内存...[2023/4/21]

彻底搞懂Redis持久化机制,轻松应对工作面试

1. 为什么要持久化 Redis是基于内存存储的数据库,如果遇到服务重启或者崩溃,内存中的数据将会被清空。所以为了确保数据安全性和可靠性,我们需要将内存中的数据持久化到磁盘上。 持久化不仅可以防止由于系统故障、重启或者其他原因导致的数据丢失。还可以用于备份、数据恢复和迁移等操作。 2. R...[2023/4/21]

微服务 - Redis缓存 · 数据结构 · 持久化 · 分布式 · 高并发

本篇内容基于 Redis v7.0 的阐述;官网:https: redis.io/ 本篇计划用 Docker 容器辅助部署,所以需要了解点 Docker 知识;官网:https: www.docker.com 系列目录: 微服务 - 概念 · 应用 · 通讯 · 授权 · 跨域 · 限流 ...[2023/4/19]

Redis性能瓶颈揭秘:如何优化大key问题?

1. 什么是Redis大key问题 Redis大key问题指的是某个key对应的value值所占的内存空间比较大,导致Redis的性能下降、内存不足、数据不均衡以及主从同步延迟等问题。 到底多大的数据量才算是大key? 没有固定的判别标准,通常认为字符串类型的key对应的value值占用...[2023/4/19]

Redis分布式锁这样用,有坑?

背景 在微服务项目中,大家都会去使用到分布式锁,一般也是使用Redis去实现,使用RedisTemplate、Redi on、RedisLockRegistry都行,公司的项目中,使用的是Redi on,一般你会怎么用?看看下面的代码,是不是就是你的写法 String lockKey...[2023/4/17]

聊聊Redis sentinel 机制

Redis 的哨兵机制自动完成了以下三大功能,从而实现了主从库的自动切换,可以降低 Redis 集群的运维开销: 监控主库运行状态,并判断主库是否客观下线; 在主库客观下线后,选取新主库; 选出新主库后,通知从库和客户端。   一、为什么需要哨兵 主从模式下,如果主库发生故障了...[2023/4/17]

深入理解 Redis 新特性:Stream

该数据结构需要 Redis 5.0.0 + 版本才可用使用 概述 Redis stream 是 Redis 5 引入的一种新的数据结构,它是一个高性能、高可靠性的消息队列,主要用于异步消息处理和流式数据处理。在此之前,想要使用 Redis 实现消息队列,通常可以使用例如:列表,有序集合、发...[2023/4/17]

Redis为什么能抗住10万并发?揭秘性能优越的背后原因

1. Redis简介 Redis是一个开源的,基于内存的,高性能的键值型数据库。它支持多种数据结构,包含五种基本类型 String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Zset(有序集合),和三种特殊类型 Geo(地理位置)、HyperLogLog(基数统计)、Bi...[2023/4/14]

太坑了吧!一次某某云上的redis读超时排查经历

一次排查某某云上的redis读超时经历 性能排查,服务监控方面的知识往往涉及量广且比较零散,如何较为系统化的分析和解决问题,建立其对性能排查,性能优化的思路,我将在这个系列里给出我的答案。 问题背景 最近一两天线上老是偶现的redis读超时报警,并且是业务低峰期间,甚是不解,于是开始着手排...[2023/4/12]

深度剖析Redis九种数据结构实现原理,建议收藏

1. Redis介绍 Redis 是一个高性能的键值存储系统,支持多种数据结构。 包含五种基本类型 String(字符串)、Hash(哈希)、List(列表)、Set(集合)、Zset(有序集合),和三种特殊类型 Geo(地理位置)、HyperLogLog(基数统计)、Bitmaps(位图)。...[2023/4/12]

Redis源码之SDS简单动态字符串

Redis 是内存数据库,高效使用内存对 Redis 的实现来说非常重要。 看一下,Redis 中针对字符串结构针对内存使用效率做的设计优化。       一、SDS的结构  c语言没有string类型,本质是char[]数组;而且c语言数组...[2023/4/12]

Redis - 底层数据结构

简介 Redis 的底层数据结构主要以下几种: SDS(Simple Dynamic String, 简单动态字符串) ZipList(压缩列表) QuickList(快表) Dict(字典) IntSet(整数集合) ZSkipList(跳跃表) 简单动态字符串 在 Redis 中,并不...[2023/4/12]

三天吃透Redis八股文

Redis连环40问,绝对够全! Redis是什么? Redis(Remote Dictionary Server)是一个使用 C 语言编写的,高性能非关系型的键值对数据库。与传统数据库不同的是,Redis 的数据是存在内存中的,所以读写速度非常快,被广泛应用于缓存方向。Redis可以将数据写...[2023/4/10]

一文讲透 Redis 事务 (事务模式 VS Lua 脚本)

准确的讲,Redis 事务包含两种模式 : 事务模式 和 Lua 脚本。 先说结论: Redis 的事务模式具备如下特点: 保证隔离性; 无法保证持久性; 具备了一定的原子性,但不支持回滚; 一致性的概念有分歧,假设在一致性的核心是约束的语意下,Redis 的事务可以保证一致性。 但 ...[2023/4/10]

Redis系列12:Redis 的事务机制 - Hello-Brand

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

Redis分布式Session和普通的cookie session有什么区别?

Redis 是一种高性能的缓存和 key-value 存储系统,常被用来实现分布式 Se ion 的方案。在这种方案中,用户的登录信息存储在 Redis 中,而不是存储在本地的 cookie 或 se ion 中。 当用户在集群中的不同节点之间切换时,通过读取 Redis 中的登录信息,各个节...[2023/3/31]

Redis高频40问

Redis连环40问,绝对够全! Redis是什么? Redis(Remote Dictionary Server)是一个使用 C 语言编写的,高性能非关系型的键值对数据库。与传统数据库不同的是,Redis 的数据是存在内存中的,所以读写速度非常快,被广泛应用于缓存方向。Redis可以将数据写...[2023/3/29]

GO实现Redis:GO实现Redis集群(5)

采用一致性hash算法将key分散到不同的节点,客户端可以连接到集群中任意一个节点 https: github.com/csgopher/go-redis 本文涉及以下文件: consistenthash:实现添加和选择节点方法 standalone_database:单机databas...[2023/3/27]

Redis - 对象结构

Redis - 对象结构

简介 Redis 使用对象存储数据库中的键和值,每当在 Redis 中创建一个新的键值对时,都会创建两个对象:一个是键对象,另一个是值对象。 其中,Redis 的每种对象都由对象结构和对应编码的数据结构组合而成,而每种对象类型对应若干编码方式,不同编码方式对应的底层数据结构也会有所不同。 ...[2023/3/27]

GO实现Redis:GO实现TCP服务器(1)

本文实现一个Echo TCP Server 完整代码:https: github.com/csgopher/go-redis interface/tcp/Handler.go type Handler interface { Handle(ctx context.Context...[2023/3/24]

Redis批量删除key的命令详解

Redis批量删除key的命令详解

redis中没有直接根据正则表达式删除key的命令,只有del key1 key2...命令 但是redis中有通过正则表达式获取key的命令:keys "正则表达式" 可以借助于xargs命令实现批量删除key,把查出来的key值当做参数传给del redis-c...[2023/3/24]

Redis - 基础数据类型

简介 根据 官网文档 的解释,可以了解 Redis 基础数据类型的一些基本信息: 对于 Redis 来说,存储的 key 值都是字符串类型,讨论数据类型的时候,指的都是存储的 value 值。这里主要是包括 5 种数据类型:String、List、Set、Hash、SortedSet。 ...[2023/3/22]

ASP.NET Core使用filter和redis实现接口防重

背景 日常开发中,经常需要对一些响应不是很快的关键业务接口增加防重功能,即短时间内收到的多个相同的请求,只处理一个,其余不处理,避免产生脏数据。这和幂等性(idempotency)稍微有点区别,幂等性要求的是对重复请求有相同的效果和结果,通常需要在接口内部执行业务操作前检查状态;而防重可以认为是...[2023/3/17]

Redis使用ZSET实现消息队列使用总结二

Redis使用ZSET实现消息队列使用总结二

转载请注明出处: 目录   1.redis 用zset做消息队列如何处理消息积压   2.redis分片并使用zset做消息队列   3. redis如何分片   4. redis使用java发送消息到zset队列并对消息进行分片处理   5. redis使用zset做消息队列时,...[2023/3/17]

【Redis场景5】集群秒杀优化-分布式锁

集群环境下的秒杀问题 前序 【Redis场景1】用户登录注册 【Redis场景2】缓存更新策略(双写一致) 【Redis场景3】缓存穿透、击穿问题 【Redis场景拓展】秒杀问题-全局唯一ID生成策略 【Redis场景4】单机环境下秒杀问题 在单机环境下的并发问题,我们可以使用相关锁...[2023/3/6]

深入理解跳表及其在Redis中的应用

前言 跳表可以达到和红黑树一样的时间复杂度 O(logN),且实现简单,Redis 中的有序集合对象的底层数据结构就使用了跳表。其作者威廉·普评价:跳跃链表是在很多应用中有可能替代平衡树的一种数据结构。本篇文章将对跳表的实现及在Redis中的应用进行学习。** 一. 跳表的基础概念 跳表,即跳...[2023/2/24]

Spring中RedisTemplate的基本使用浅析

目录spring-data-redis项目使用步骤 spring-data-redis项目   spring-data-redis提供了在Spring应用中通过简单的配置访问redis服务,封装了 RedisTemplate 对象来对Redis进行各种操作、异常处理及序列化,...[2023/2/22]

用Redis实现延迟队列,我研究了两种方案,发现并不简单

大家好,我是三友~~ 背景 前段时间有个小项目需要使用延迟任务,谈到延迟任务,我脑子第一时间一闪而过的就是使用消息队列来做,比如RabbitMQ的死信队列又或者RocketMQ的延迟队列,但是奈何这是一个小项目,并没有引入MQ,我也不太想因为一个延迟任务就引入MQ,增加系统复杂度,所以这个方...[2023/2/15]

redis实现分布式锁(包含代码以及分析利弊)

redis实现分布式锁(基础版) 使用redis实现分布式锁的方法有多种,基础版本是基于setnx命令,即如果不存在则设置。这个命令可以保证只有一个客户端能够成功设置一个key,从而获得锁。设置key的时候需要设置一个过期时间,以防止死锁。释放锁的时候需要删除key,或者使用lua脚本来保证原子...[2023/2/13]

Redisson分布式闭锁RCountDownLatch的使用详细讲解

Redisson分布式闭锁RCountDownLatch的使用详细讲解

目录一、RCountDownLatch的使用二、trySetCount()设置计数器三、countDown()源码四、await()源码 本篇文章基于redi on-3.17.6版本源码进行分析 一、RCountDownLatch的使用 RCountDownLatch的功能跟CountDow...[2023/2/13]

Redisson分布式信号量RSemaphore的使用超详细讲解

目录一、RSemaphore的使用二、RSemaphore设置许可数量三、RSemaphore的加锁流程四、RSemaphore的解锁流程 本篇文章基于redi on-3.17.6版本源码进行分析 一、RSemaphore的使用 @Test public void testRSemapho...[2023/2/13]

Redisson RedLock红锁加锁实现过程及原理

目录一、主从redis架构中分布式锁存在的问题二、红锁算法原理三、红锁算法的使用四、红锁加锁流程五、RedLock算法问题六、总结 本篇文章基于redi on-3.17.6版本源码进行分析 一、主从redis架构中分布式锁存在的问题 1、线程A从主redis中请求一个分布式锁,获取锁成功; ...[2023/2/13]

357
4
记录数:748 页数:3/15首页上一页12345678910下一页尾页
 友情链接:直通硅谷  点职佳  北美留学生论坛
加载更多

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号