list/set/hash/zset 这四种数据结构是容器型数据结构:1、create if not exists2、drop if no elements阻塞读在队列没有数据的时候,会立即进入休眠状态,一旦数据到来,则立刻醒过来。消息的延迟几乎为零。用 blpop/brpop 替代前面的 lpop/rpop位图不是特殊的数据结构,它的内容其实就是普通的字符串,也就是 byte 数组。我们 可以使
Redis深度历险--核心原理与应用实践: Redis是互联网技术领域应用非常广泛的存储中间件,它是remote dictionary service的简称,远程字典服务。 Redis 可以做什么?Redis的业务应用范围非常广泛,让我们以掘金技术社区(juejin.im)的帖子模块为实例,梳理一下,Redis 可以用在哪些地方? 记录帖子的点赞数、评论数和点击数 (
redis深度历险这本书已经看完一遍了,但是记性不太好,看完就忘,所以准备写一个笔记,以后看笔记就好了。./redis-server./redis-cli -h ip -p port目录第一章 基础和应用篇1.1 5种基础结构1.1.1 string1.1.2 list1.1.3 hash1.1.4 set1.1.5 zset1.2 分布式锁1.3 延时队列第一章 基础和应用篇1.1 5种基础结构
转载 2024-01-11 20:27:29
84阅读
Redis深度历险:核心原理和应用实践——第2篇 原理篇1:线程 IO 模型非阻塞IO事件轮询(多路复用)指令队列响应队列定时任务2: 通信协议RESP(Redis Serialization Protocol)3: 持久化快照原理fork(多进程)AOF原理AOF重写fsync运维Redis 4.0 混合持久化4:管道Redis 的消息交互管道压力测试深入理解管道本质5: 事务Redis事务的
转载 2024-01-12 07:08:54
48阅读
对《Redis深度历险:核心原理和应用实践》(作者:钱文品)这本书的知识进行了自己的理解总结。 目录数据结构字符串数据结构list(列表)内部实现:快速列表hash(哈希)set(集合)zset(有序列表)内部实现:跳表分布式锁解决setnx(抢锁)和expire(给锁设置过期时间,防死锁)的原子操作问题解决业务时长超过锁过期时间的问题redis实现队列利用list实现异步消息队列解决队列空了导致
Redis深度历险--核心原理与应用实践: Redis是互联网技术领域应用非常广泛的存储中间件,它是remote dictionary service的简称,远程字典服务。 Redis 可以做什么?Redis的业务应用范围非常广泛,让我们以掘金技术社区(juejin.im)的帖子模块为实例,梳理一下,Redis 可以用在哪些地方? 记录帖子的点赞数、评论数和点击数 (
emmm,注册博客之后基本就查资料的时候看看,之前开始写了两天就放弃了,太难了,得养成个好习惯,改变一下做思维导图和记笔记习惯,尝试一下写博客。书中的部分内容采用的是Java的方式来解释的,如果我可以的话,我可能会尝试使用python来解释一下,妈耶,看到后面才发现代码还有python的版本 前言  前面的部分算是前言吧,简单的介绍一下redis,顺带发出会心一击:  redis能做什么
转载 2023-11-21 04:55:33
65阅读
Redis的基本数据结构五种基本:字符串、list列表、hash字典、set集合、zset有序集合字符串键值对设置: set name value 批量键值对设置: 设置 mset nama1 boy name2 girl name3 unknown 批量读 mget name1 name2 name3设置自动删除: set name codehole get name “codehole” ex
转载 2024-01-17 08:38:21
115阅读
# Redis 深度历险 Redis 是一个开源的内存数据结构存储系统,广泛用于缓存、实时分析、任务队列等场景。它以高性能、灵活的结构和丰富的数据类型而闻名。本篇文章将详细介绍 Redis 的核心特性、数据结构及其应用,用代码示例帮助读者更好地理解。 ## 一、Redis 的核心特性 在进入具体的使用之前,我们先了解一下 Redis 的几个核心特性: 1. **高性能**:Redis 能够
原创 9月前
25阅读
Redis 深度历险:核心原理和应用实践目 录开篇:授人以鱼不若授人以渔—— Redis 可以用来做什么? 7由 Redis 面试想到的 7小册的内容范围 8Redis 可以做什么? 8基础:万丈高楼平地起 ——Redis 基础数据结构 11Redis 安装 11Redis 基础数据结构 12str
1.redis五种数据结构1.1 String字符串类型,对应java字符串类型用户信息序列化后,可以用string类型存入redis中批量读写string类型,见效网络消耗数字类型的string类型,可以自增自减操作,有一个大小限制。1.2 list类型,对应java的LinkedList,链表结构。增删O(1),查询O(n)异步队列,一边线程塞入,一边线程取出消费。结构又和java的不同,多个
Redis作用1、记录体制的点赞数、评论数和点技术(hash)2、记录用户的帖子ID列表(排序),便于快速显示用户的帖子列表(zset)3、记录贴子的标题、摘要、作者和锋面信息,用于列表页展示(hash)4、记录贴子的点赞用户ID列表,评论ID列表,用于显示和去重计数(zset)5、缓存近期热帖内容(帖子内容空间占用比较大),减小数据库压力(hash)6、记录贴子的相关文章ID,根据内容推荐相关帖
Redis持久化的方式1、快照方式持久化,将内存中数据的二进制序列化形式备份到磁盘上,数据在存储上非常紧凑2、AOF日志,记录内存数据修改的指令记录文本,在长期运行后AOF日志的体积将会变得无比庞大,数据库重启时加载AOF日志进行指令重放,这个时间就会很漫长。所以要定期进行AOF重写,给AOF日志进行瘦身快照原理Redis在服务器处理请求的时候还需要进行内存快照,内存快照要求Redis必须进行文件
转载 2023-12-13 06:13:05
53阅读
一、info命令在使用 Redis 时,时常会遇到很多问题需要诊断,在诊断之前需要了解 Redis 的运行状 态,通过强大的 Info 指令,你可以清晰地知道 Redis 内部一系列运行参数。Info 指令显示的信息非常繁多,分为 9 大块,每个块都有非常多的参数,这 9 个块分 别是:1、Server 服务器运行的环境参数2、Clients 客户端相关信息3、Memory 服务器运行内存统计数据
说明:本文章为书籍《Redis深度历险》的读书笔记目录:应用原理集群拓展源码应用内容列表:ZSET,分布式锁,HyperLogLog,布隆过滤器1.ZSET 有序列表 sorted set形式 value 1 - score 1value 2 - score 2value 3 - score 3数据结构 value -> score : HashMapscore -
# Redis 深度历险:从基本概念到高级应用 Redis(REmote DIctionary Server)是一种开源的内存数据结构存储系统,它可以作为数据库、缓存和消息中间件。得益于其高性能和丰富的数据结构,Redis 在现代应用中越来越受到青睐。在这篇文章中,我们将深入探讨 Redis 的基本概念、使用方法以及一些高级技巧。 ## 1. Redis 的基本概念 Redis 是一个基于键
原创 2024-10-01 07:53:23
4阅读
# Redis深度历险 下载实现教程 ## 1. 任务概述 在这个教程中,我们将教会你如何通过编写代码实现一个简单的“Redis深度历险”下载功能。我们将使用Python和Redis,步骤会涵盖从环境准备到代码实现,再到运行和测试。 ## 2. 流程概述 首先,让我们看一下整个开发流程的步骤。下面是一个简单的表格,展示了我们需要完成的步骤和必要的操作。 | 步骤 | 操作内
原创 10月前
41阅读
# Redis深度历险:探索高性能键值数据库 Redis作为一个开源的高性能键值数据库,有着极高的访问速度和丰富的数据结构,广泛应用于缓存、实时分析等领域。在这篇文章中,我们将深度探讨Redis的一些重要特性,并通过代码示例展示其强大功能。 ## Redis的数据结构 Redis不仅仅是一个简单的键值存储,还支持多种复杂数据结构。以下是Redis支持的主要数据结构: | 数据结构 | 描述
原创 2024-08-30 03:51:34
26阅读
文章目录RESP持久化rdbaof重写fsync备份内存优化32bit vs 64bitziplist intset内存回收info安全指令黑名单密码LuaSSL RESPRedis Serialization ProtocolRedis协议将传输的结构分为5种最小单元类型,单元结束时同一加上回车换行符号\r\n单行字符串以"+"符号开头多行字符串以"$"符号开头,后跟字符串长度整数值以":"符
转载 2024-10-10 15:08:57
13阅读
前言大家都知道,Redis是强大的开源缓存系统,新浪微博就是用的redis支撑整个缓存业务,大家也知道,缓存在网络平台应用中起着非常重要的作用,关系着用户的访问速度和体验。在构建媒体平台的应用中,我们发现无论是小型还是中大型,都需要利用缓存系统去改进用户体验,否则依赖Drupal本身的数据库缓存,不仅系统开销大,所需硬件急剧膨胀,而且效果不太好,不能灵活控制。Drupal本身的数据库缓存只能用在简
  • 1
  • 2
  • 3
  • 4
  • 5