前言
在日常开发中,我们一般都选择关系型数据库来存储数据,如MySQL,Oracle等,但是在并发量比较大的业务场景,关系型数据库往往会成为系统瓶颈,无法完全满足我们的需求,所以就诞生了非关系型数据库,即NoSql数据库。
2025年10月13日
在日常开发中,我们一般都选择关系型数据库来存储数据,如MySQL,Oracle等,但是在并发量比较大的业务场景,关系型数据库往往会成为系统瓶颈,无法完全满足我们的需求,所以就诞生了非关系型数据库,即NoSql数据库。
2025年10月13日
本文对Redis最常用的一些命令进行了介绍,其中包括各种不同数据类型的常用命令、PUBLISH命令和SUBSCRIBE命令、SORT命令、两个事务命令MULTI和EXEC,以及与过期时间有关的几个命令。
本文的第一个目标是让读者知道—Redis为每种结构都提供了大量的处理命令,本章只展示了其中最重要的70多个命令,其余的命令可以在http://redis.io/commands看到。
本文的第二个目标是让读者知道—本书并非为每个问题都提供了完美的答案。通过在练习里面对第1章和第2章展示的示例进行回顾(练习的答案在本书附带的源码里面),本书向读者提供了一个机会,让读者把已经不错的代码变得更好,或者变得更适合于读者自己的问题。
2025年10月13日
上一章我们梳理了Redis的核心应用场景与选型逻辑,本章将聚焦Redis的命令体系,从键操作到各数据类型的核心命令,帮你快速掌握Redis的"操作语法"。
作为key-value型数据库,键(Key)是Redis中所有操作的基础。以下是最常用的键命令:
2025年10月13日
key中存储的字符串转化为数字后加一。如果key不存在,则会在该命令执行前,将key对应value设置为0。如果key对应value的类型不为string,则报错。如果key对应的value不能转化为数字型变量,则报错。这个命令最多能操作64位长有符号的整型数。
2025年10月13日
Redis共有5种常见数据结构,分别字符串(STRING)、列表(LIST)、集合(SET)、散列(HASH)、有序集合(ZSET)。
String 类型是一个 k-v 键值对形式的数据类型,一个 key 对应一个 value。
2025年10月13日
那个深夜,我登上了公司的服务器,在Redis 命令行里敲入 keys* 后,线上开始报警,服务瞬间被卡死,我只能举起双手,焦急地等待几千万key被慢慢扫描,束手无策万念俱灰的时候,我收到了leader的短信:你明天不用来上班了。
虽然上面是我的臆想,事实上很多公司的运维也会禁用这些命令,来防止开发出错。但我在群里依然看到有同学在问“为什么Redis不能用 keys?我觉得挺好的呀”时,为了不让上面的情况发生,我决定写下这篇文章。
如何才能优雅地遍历Redis?作为一种可以称为数据库的组件,这是多么理所因当的要求。终于,Redis在2.8.0版本新增了众望所归的 scan操作,从此再也不用担心敲入了keys*, 然后等着定时炸弹的引爆。
2025年10月13日
Redis 作为高性能键值存储系统,数据结构是其核心竞争力。不同数据结构适配不同业务场景,高效利用可大幅提升系统性能与开发效率。本文基于思维导图,对 Redis 核心数据结构(字符串、列表、集合、有序集合、哈希、位图、HyperLogLog、地理空间、流等)的命令、用法、技巧及架构实践展开详细分析。
2025年10月13日
Redis 是一种速度非常快的非关系型数据库解决方案。其简单的键值数据模型使 Redis 能够处理大型数据集,同时保持令人印象深刻的读写速度和可用性。Redis 允许您使用各种数据类型(例如列表、哈希、集合和排序集合)来存储和管理数据。