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

记一次 Redisson 线上问题 → ERR unknown command 'WAIT' 的排查与分析

开心一刻   昨晚和一个朋友聊天   我:处对象吗,咱俩试试?   朋友:我有对象   我:我不信,有对象不公开?   朋友:不好公开,我当的小三 问题背景   程序在生产环境稳定的跑着   直到有一天,公司执行组件漏洞扫描,有漏洞的 jar 要进行升级修复 ...[2023/9/20]

Linux服务器使用Redis作为数据缓存,并用log4j2进行日志记录

前言 个人网站使用Vue作为前端,SpringBoot作为后端,MySQL作为数据库,但前端每次请求都会从MySQL数据库中读取数据,而MySQL数据库的数据是存储于服务器磁盘中,所以响应速度有一定影响。之前了解过一点Redis数据库,该数据库数据存储于内存中(也可以持久化于磁盘中),数据读...[2023/9/20]

SpringBoot + Redis + Token 解决接口幂等性问题

SpringBoot + Redis + Token 解决接口幂等性问题

前言 SpringBoot实现接口幂等性的方案有很多,其中最常用的一种就是 token + redis 方式来实现。 下面我就通过一个案例代码,帮大家理解这种实现逻辑。 原理 前端获取服务端getToken() -> 前端发起请求 -> header中带上token -...[2023/9/18]

Redis从入门到放弃(12):pipeline管道技术

Redis从入门到放弃(12):pipeline管道技术

1、引言 在现代应用程序中,高性能和低延迟是至关重要的因素。而在处理大规模数据操作时,Redis作为一种快速、可靠的内存数据库,成为了许多开发人员的首选。 在Redis中,每个操作都需要与服务器进行往返通信,存在网络开销损耗,当有批量命令执行时,就会有较大的网络开销损耗。为了解决这个问题,Re...[2023/9/13]

Java开发面试--Redis专区

1、 什么是Redis?它的主要特点是什么? 答: Redis是一个开源的、基于内存的高性能键值对存储系统。它主要用于缓存、数据存储和消息队列等场景。 高性能:Redis将数据存储在内存中,并采用单线程的方式处理请求,使得其读写速度非常快,能够达到10万+的读写操作每秒。 数据结构丰富...[2023/9/13]

redis

博客地址:https: www.cnblogs.com/zylyehuo/ 五大数据类型 参考链接:redis学习 string,字符串类型 hash,哈希类型,如同python的dict set,无序集合 zset,有序集合 list,双向队列,向左插入数据,向右插入数据,向左、右...[2023/9/10]

Redis的三大问题

Redis的三大问题

一般我们对缓存读操作的时候有这么一个固定的套路: 如果我们的数据在缓存里边有,那么就直接取缓存的。 如果缓存里没有我们想要的数据,我们会先去查询数据库,然后将数据库查出来的数据写到缓存中。 最后将数据返回给请求 代码例子: 1 @Override 2 public R sel...[2023/9/10]

【后端面经-数据库】Redis数据结构和底层数据类型

目录1. Redis数据类型1.1 基本数据类型1. string2. hash3. list4. set5. sortset/Zset1.2 特殊数据类型1. bitmap2. hyperloglog3. GEO4. stream2. Redis底层数据类型2.1 简介2.2 动态字符串SD...[2023/9/9]

一台服务器上部署 Redis 伪集群

一台服务器上部署 Redis 伪集群

哈喽大家好,我是咸鱼 今天这篇文章介绍如何在一台服务器(以 CentOS 7.9 为例)上通过 redis-trib.rb 工具搭建 Redis cluster (三主三从) redis-trib.rb 是一个基于 Ruby 编写的脚本,其功能涵盖了创建、管理以及维护 Redis 集群的各个...[2023/8/29]

Redis常用命令

Redis常用命令

目录起因配置bind端口连接开启连接关闭连接命令key相关字符串相关hash相关List相关Set相关SortedSet相关GEO相关服务器命令引用 起因 从标题来看,似乎这篇博文没有看下去的必要了,谁用redis还敲命令行,不都是GUI嘛。 确实,GUI现在特别的好用,直观、高效还美观。...[2023/8/29]

Redis从入门到放弃(11):雪崩、击穿、穿透

1、前言 Redis作为一款高性能的缓存数据库,为许多应用提供了快速的数据访问和存储能力。然而,在使用Redis时,我们不可避免地会面对一些常见的问题,如缓存雪崩、缓存穿透和缓存击穿。本文将深入探讨这些问题的本质,以及针对这些问题的解决方案。 2、缓存雪崩 2.1、问题描述 在某个时间点,...[2023/8/29]

Redis专题-秒杀

Redis专题-并发/秒杀 开局一张图,内容全靠“编”。 昨天晚上在群友里看到有人在讨论库存并发的问题,看到这里我就决定写一篇关于redis秒杀的文章。 1、理论部分 我们看看一般我们库存是怎么出问题的 其实redis提供了两种解决方案:加锁和原子操作。 1.1、加锁 加锁:...[2023/8/21]

Redis 持久化及集群架构

1 Redis 持久化 1.1 持久化的概念和原因 Redis 持久化是指将 Redis 服务器中的数据保存到磁盘上,以便在服务器重启后可以重新加载数据。持久化是为了解决 Redis 内存数据库的数据丢失问题。 持久化的原因有以下几点: 数据安全:通过将数据保存到磁盘上,即使发生服务器故障或...[2023/8/16]

优化 Redis 集群缓存分配:解决节点间分配不均导致内存溢出问题

一、Redis 集群部署简介 在现代应用程序中,缓存被广泛应用以提高性能和减轻后端数据库的压力。本文将探讨面对 Redis 集群缓存分配不均问题时的解决方法。 我们的 Redis 集群部署包括 3 主 3 从,每个节点分配内存 4G(服务器总内存32G),内存淘汰策略相同:volatile-l...[2023/8/16]

缓存面试解析:穿透、击穿、雪崩,一致性、分布式锁、Redis过期,海量数据查找

为什么使用缓存 在程序内部使用缓存,比如使用map等数据结构作为内部缓存,可以快速获取对象。通过将经常使用的数据存储在缓存中,可以减少对数据库的频繁访问,从而提高系统的响应速度和性能。缓存可以将数据保存在内存中,读取速度更快,能够大大缩短数据访问的时间,提升用户体验。 在业界中,通常在...[2023/8/9]

Redis从入门到放弃(10):分布式锁

在分布式系统中,实现对共享资源的安全访问是一个关键问题。Redis作为一种高性能的内存数据库,提供了多种方式来实现分布式锁,以解决多个节点之间对共享资源的并发访问问题。 本文将介绍五种Redis分布式锁的解决方案及其原理、应用场景以及Java代码的实现步骤。 1、SETNX SETNX(SE...[2023/8/9]

Redis从入门到放弃(8):哨兵模式

在前面的文章中介绍了Redis的主从复制,但主从复制存在一定的缺陷。如果Master节点宕机,因为不具备自动恢复功能,需要人工干预,那么在这个干预过程中Redis将不可用。 为了解决这一问题,Redis官方推荐一种高可用方案:哨兵模式(Sentinel)。 1、什么是哨兵模式? 哨兵模式是R...[2023/8/4]

Redis从入门到放弃(7):主从复制

目录1、概念2、作用3、配置4、原理4.1、第一阶段:建立链接、协商同步4.2、第二阶段:数据同步4.3、第三阶段:命令传播 1、概念 主从复制是Redis的一项重要特性,用于将一个Redis服务器(Master主节点)的数据复制到其他Redis服务器(Slave从节点),以实现数据的高可用...[2023/8/4]

Redis从入门到放弃(6):持久化

1、引言 Redis作为一种高性能的内存数据存储系统,常被用作缓存、会话存储、消息队列等多种应用场景。然而,由于其数据存储在内存中,一旦发生意外或服务器重启,数据就会丢失。为了保障数据的持久性和安全性。 Redis提供了多种持久化方案: RDB(Redis DataBase):按指定的时间间...[2023/8/4]

Redis从入门到放弃(5):事务

Redis从入门到放弃(5):事务

1、事务的定义 Redis的事务提供了一种“将多个命令打包, 然后一次性、按顺序地执行”的机制。 redis事务的主要作用就是串联多个命令防止别的命令插队。 但是,事务并不具有传统数据库事务的特性,如回滚。 2、事务命令 Redis中的事务可以通过以下命令来执行: MULTI:用于开启一...[2023/7/31]

Redis从入门到放弃(3):发布与订阅

1、介绍 Redis是一个快速、开源的内存数据库,支持多种数据结构,如字符串、哈希、列表、集合、有序集合等。除了基本的数据存储和检索功能外,Redis还提供了许多高级功能,其中之一就是发布订阅(Pub/Sub)。 发布订阅是一种消息传递模式,它允许消息的发布者(发布者)将消息发送给多个订阅者(...[2023/7/28]

Redis从入门到放弃(1):安装配置

Redis从入门到放弃(1):安装配置

1. 介绍 Redis是一个高性能的开源key-value数据库。它被广泛应用于缓存、会话存储、实时分析、消息队列等场景。Redis具有以下三个主要特点: 数据持久化:Redis支持将内存中的数据保存到磁盘上,确保数据在断电或重启后不丢失。 多样数据结构:除了支持简单的key-value存储,...[2023/7/28]

Redis持久化机制 RDB、AOF、混合持久化详解!如何选择?

本文已经收录进 JavaGuide(「Java学习+面试指南」一份涵盖大部分 Java 程序员所需要掌握的核心知识。) Redis 持久化机制属于后端面试超高频的面试知识点,老生常谈了,需要重点花时间掌握。即使不是准备面试,日常开发也是需要经常用到的。 最近抽空对之前写的 Redis 持...[2023/7/28]

Redis 主从同步原理

一、什么是主从同步? 主从同步,就是将数据冗余备份,主库(Master)将自己库中的数据,同步给从库(Slave)。 从库可以一个,也可以多个,如图所示: 二、为什么需要主从同步? Redis 虽然有 RDB 和 AOF 持久化技术,可以在服务器重启的情况下保证内存中的数据不会丢失(但不...[2023/7/28]

微服务探索之路06篇k8s配置文件Yaml部署Redis使用Helm部署MongoDB和kafka

1 安装Redis 1.1创建配置文件redis.conf 切换到自己的目录下如本文是放在/home/ubuntu下 cd /home/ubuntu vim redis.conf bind 0.0.0.0 protected-mode yes port 6379 requirepa qw...[2023/7/24]

Redis解决网络抖动问题

Redis解决网络抖动问题

Redis解决网络抖动问题 所谓网络抖动问题, 简单来说就是防止用户短暂的时间内对同一个接口多次点击访问 这里利用的是redis锁的原子性和with Statement上下文管理器实现, 另外该类还支持协程, 可使用async with 调用 1. 源码 FuncDefine.py def...[2023/7/24]

如何使用C#中的Lambda表达式操作Redis Hash结构,简化缓存中对象属性的读写操作

Redis是一个开源的、高性能的、基于内存的键值数据库,它支持多种数据结构,如字符串、列表、集合、散列、有序集合等。其中,Redis的散列(Hash)结构是一个常用的结构,今天跟大家分享一个我的日常操作,如何使用Redis的散列(Hash)结构来缓存和查询对象的属性值,以及如何用Lambda...[2023/7/17]

2023-06-19:讲一讲Redis分布式锁的实现?

2023-06-19:讲一讲Redis分布式锁的实现? 答案2023-06-19: Redis分布式锁最简单的实现 要实现分布式锁,确实需要使用具备互斥性的Redis操作。其中一种常用的方式是使用SETNX命令,该命令表示"SET if Not Exists",即只有在key不存在时才设置其...[2023/6/19]

2023-06-13:统计高并发网站每个网页每天的 UV 数据,结合Redis你会如何实现?

2023-06-13:统计高并发网站每个网页每天的 UV 数据,结合Redis你会如何实现? 答案2023-06-13: 选用方案:HyperLogLog 如果统计 PV (页面浏览量)那非常好办,可以考虑为每个网页创建一个独立的 Redis 计数器,并将日期添加为键(key)的后缀。当网页...[2023/6/14]

通过redis学网络(2)-redis网络模型

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

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主从切换导致的数据丢失与陷入只读状态故障

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

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 的10种数据类型,分别是 string(字符串) hash(哈希) list(列表) set(集合) zset(有序集合) stream(流) geospatial(地理) bi...[2023/5/10]

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

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

【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连环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]

357
2
记录数:678 页数:1/1412345678910下一页尾页
 友情链接:直通硅谷  直通硅谷 怎么样 mac软件下载  热播韩剧  策驰影视  秋霞影视  酷客影视  麻花影视  酷客影院  蘑菇影视  飘雪影院  好韩剧  韩剧TV  热播韩剧  天天影院  泡泡影院  窝窝影视
加载更多