顾乔芝士网

持续更新的前后端开发技术栈

Redis 中 keys 命令带来的线上性能问题,怎么解决?

推荐学习

Redis高级特性之发布/订阅和Lua脚本执行原理分析

前言

Redis当中除了之前介绍的事务,持久化等高级特性之外,还提供了发布与订阅,Lua脚本,事件机制等高级特性,本文会继续介绍Redis的另外两大高级特性:

Redis那些事——List相关命令解析

这期探索Redis中list数据结构相关命令。list 是一系列有序值。一些与list 交互的重要的命令是RPUSH,LPUSH,LLEN,LRANGE,LPOP和RPOP

1 LPUSH key element [element ...]

将要存储的值从key对应的列表数据结构头部放进去。如果key不存在,则在执行推送操作之前将其创建为空列表。当key保存的值不是列表时,将返回错误。当保存成功,返回的是存储的个数。

Redis 分布式锁深度解析:setnx 命令的核心作用与实现

在分布式系统中,多个服务节点需要协同工作,而共享资源的并发访问控制是绕不开的话题。Redis 凭借其高性能和原子性操作特性,成为实现分布式锁的热门选择。本文将基于你的学习笔记,深入解析 Redis 分布式锁的核心原理、原子性保障及实现逻辑,帮你构建更完整的知识体系。

一、为什么需要分布式锁?

在单体应用中,我们可以用synchronized或ReentrantLock等本地锁解决并发问题。但在分布式架构下,服务部署在多个节点,本地锁只能控制单个 JVM 内的线程,无法阻止其他节点对共享资源的访问。例如:

SpringBoot中Redis的7种序列化策略

在分布式系统中,Redis作为高性能的缓存和数据存储解决方案被广泛应用。当使用SpringBoot框架整合Redis时,序列化策略的选择直接影响到系统的性能、兼容性和可维护性。

序列化是将Java对象转换为可在网络上传输或存储在磁盘上的过程,反序列化则是将这些数据重新转换为Java对象。

合适的序列化策略能够带来以下好处:

  • 提高系统性能和存储效率

42张图,带你真正搞懂redis数据类型的底层

思维导图:

我是redis

redis专题系列18 -- redis-trib.rb常用命令详解

上一篇文章教大家手动搭建了一个Cluster集群,并演示了故障转移的过程,本文接着讲Cluster集群的动态扩展,简单来讲就是如何在Cluster模式下实现节点的新增和废弃节点的删除以及如何重新分配slot来达到集群的高可用,实现集群的动态扩展,而这一切都基于redis-trib.rb脚本,首先,我们对redis-trib.rb的命令开始说起:

本文分两部分:1,redis-trib.rb

深入理解Redis的scan命令_redis sink


熟悉Redis的人都知道,它是单线程的。因此在使用一些时间复杂度为O(N)的命令时要非常谨慎。可能一不小心就会阻塞进程,导致Redis出现卡顿。

有时,我们需要针对符合条件的一部分命令进行操作,比如删除以test_开头的key。那么怎么获取到这些key呢?在Redis2.8版本之前,我们可以使用keys命令按照正则匹配得到我们需要的key。但是这个命令有两个缺点:

    只需5分钟,完成Redis所有命令操作~

    你好,我是田哥

    常见的面试题:redis可以存储哪些类型的数据结构?

    Redis到底什么,该怎么用_redis到底是什么

    大家有没有发现一个问题,新项目刚上线时跑得可快了,自己点点还挺得意。可时间一长,用户一多,网页就开始转圈,查个数据库比乌龟还慢。

    这时候,可别急着把锅都甩给数据库。这是因为架构里少了一个提速的好帮手,那就是Redis。


    << < 4 5 6 7 8 9 10 11 12 13 > >>
    控制面板
    您好,欢迎到访网站!
      查看权限
    网站分类
    最新留言