redis

Redis详解(持续更新) redis 阅读详情

知识点一:redis概述

知识点二:redis存储

        redis操作

知识点三:redis数据类型

        1.String

        2.过期时间

        3.list

        4.Hash

        5.set

        6.zset

拓展(了解)

知识点一:redis概述

端口6379

Redis 本质上是一个 Key-Value 类型的内存数据库, 整个数据库加载在内存当中进行操作, 定期通过异步操作把数据库数据 flush 到硬盘上进行保存。

因为是纯内存操作, Redis 的性能非常出色, 每秒可以处理超过 10 万次读写操作, 是已知性能
最快的 Key-Value DB。
Redis 的出色之处不仅仅是性能, Redis 最大的魅力是支持保存多种数据结构, 此外单个
value 的最大限制是 1GB, 不像 memcached 只能保存 1MB 的数据, 因此 Redis 可以用
来实现很多有用的功能,比方说用他的 List 来做 FIFO 双向链表,实现一个轻量级的高性 能
消息队列服务, 用他的 Set 可以做高性能的 tag 系统等等。

另外 Redis 也可以对存入的Key-Value 设置 expire 时间, 因此也可以被当作一 个功能加强版的 memcached 来用。
Redis 的主要缺点是数据库容量受到物理内存的限制, 不能用作海量数据的高性能读写, 因此 Redis 适合的场景主要局限在较小数据量的高性能操作和运算上 Redis 与其他 key - value 缓存产品有以下三个特点:

(1)Redis 支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。

(2)Redis 不仅仅支持简单的 key-value 类型的数据,同时还提供 list,set,zset,hash 等数据结构的存储。

(3)Redis 支持数据的备份,即 master-slave 模式的数据备份。

Redis 有哪些适合的场景?

(1)、 会话缓存(Session Cache)
最常用的一种使用 Redis 的情景是会话缓存(session cache)。 用 Redis 缓存会话比其他
存储(如 Memcached) 的优势在于: Redis 提供持久化。 当维护一个不是严格要求一致性
的缓存时, 如果用户的购物车信息全部丢失, 大部分人都会不高兴的, 现在, 他们还会这样
吗?
幸运的是, 随着 Redis 这些年的改进, 很容易找到怎么恰当的使用 Redis 来缓存会话的文
档。 甚至广为人知的商业平台 Magento 也提供 Redis 的插件。
(2)、 全页缓存(FPC)
除基本的会话 token 之外, Redis 还提供很简便的 FPC 平台。 回到一致性问题, 即使重启
了 Redis 实例, 因为有磁盘的持久化, 用户也不会看到页面加载速度的下降, 这是一个极
大改进, 类似 PHP 本地 FPC。
再次以 Magento 为例, Magento 提供一个插件来使用 Redis 作为全页缓存后端。
此外, 对 WordPress 的用户来说, Pantheon 有一个非常好的插件 wp-Redis, 这个插件
能帮助你以最快速度加载你曾浏览过的页面。
(3)、 队列
Reids 在内存存储引擎领域的一大优点是提供 list 和 set 操作,这使得 Redis 能作为一个
很好的消息队列平台来使用。 Redis 作为队列使用的操作, 就类似于本地程序语言(如
Python) 对 list 的 push/pop 操作。
如果你快速的在 Google 中搜索“Redis queues”, 你马上就能找到大量的开源项目, 这些
项目的目的就是利用 Redis 创建非常好的后端工具, 以满足各种队列需求。 例如, Celery
有一个后台就是使用 Redis 作为 broker, 你可以从这里去查看。

(4)、 排行榜/计数器
Redis在内存中对数字进行递增或递减的操作实现的非常好。集合(Set)和有序集合(Sorted
Set) 也使得我们在执行这些操作的时候变的非常简单, Redis 只是正好提供了这两种数据
结构。 所以, 我们要从排序集合中获取到排名最靠前的 10 个用户–我们称之为
“user_scores”, 我们只需要像下面一样执行即可:
当然, 这是假定你是根据你用户的分数做递增的排序。 如果你想返回用户及用户的分数, 你
需要这样执行:
ZRANGE user_scores 0 10 WITHSCORES
Agora Games 就是一个很好的例子, 用 Ruby 实现的, 它的排行榜就是使用 Redis 来存储
数据的, 你可以在这里看到。
(5)、 发布/订阅
最后 是 Redis 的发布/订阅功能。 发布/订阅的使用场景确实非
常多。 我已看见人们在社交网络连接中使用, 还可作为基于发布/订阅的脚本触发器, 甚至
用 Redis 的发布/订阅功能来建立聊天系统。

知识点二:redis存储

redis操作

redis-cli

redis-cli --raw

知识点三:redis数据类型

1.string

#创建
set name fufu
#查询
get name
#追加
append name " jianqi"
#删除
del name
#设置多个
mset name1 jack1 name2 jack2 
#查看多个
mget name1 name2

2.过期时间(不属于数据类型,仅是扩展)

#10秒钟后销毁
expire name2 10

#删除过期时间
persist name2

#ttl 返回-1代表没有过期时间  -2已经过期了

3.list

#应用场景
消息队列
排行榜
#创建
rpush lname y1 y2 y3 y4 y5 y6 y7
查看
type lname 查看类型
lrange lname 0 -1  #0 -1 分别是初始下标和结束下标
#左插入
lpush lname g5 g6
#右插入
rpush lname g7 g8
#索引查找
lindex lname 0
#修改
lset lname 1 jianqi
#删除
rpop lname
lpop lname
lrem lname 0 y2 #删除所有的y2

4.Hash

#应用场景
购物车
key:(field:value)

#创建
hset hname name1 jianqi1
hmset
#查看
hget
hmset
#删除
hdel
#读取全部
hgetall hname
#获得指定key所有字段的值
hvals hname
#查看数据长度
hlen hname

5.set

#应用场景
随机展示
黑名单
好友
关注
粉丝等

#创建
sadd sname g1 g2 g3 g4 g5 g6 g6
#查看
smembers sname
#删除
spop sname
spop sname 2 #删两个
#指定删除
srem sname member g5 
#获取多少个元素
scard sname

6.zset

限流

#创建
zadd zname 10 y2 20 y3 30 y4 40 y5
#查看数据
zrange zname 0 -1
zrangebyscore zname 0 100     #通过分数查看
#查看元素分数
zscore zname y4               
#删除
zrem zname y2     
#根据索引删除            
zremrangebyrank zname 0 0     #通过顺序删除
#根据分数删除
zremrangebyscore zname 0 20   #通过分数删除

扩展(了解)

Redis7系列:Redis对决RedisStack Redis 是一个开源的内存数据库,以高性能、低延迟著称,支持基础数据结构(如字符串、哈希、列表、集合、有序集合等),常用于缓存、消息队列、实时数据处理等场景。Redis Stack 是 Redis 的扩展版本,整合了 Redis 核心数据库与多个高级功能模块(如全文搜索、JSON 文档存储、图数据库、时间序列等),提供“一站式”解决方案,简化了复杂数据场景的开发。 阅读详情

相关推荐

【Redis】Redis入门

redis入门基础、Linux下安装redis

大三小白C++进阶之路 1620

Redis使用手册

给公司整理了一个简单的Redis使用手册,其中很多部分也是参考的他人的资料,在这里分享给大家~    Redis调研及使用文档 Redis调研及使用文档... 1 1       引言... 4 2       概述... 4 3       Redis介绍... 4 3.1        五种数据类型... 4 3.1.1         String类型..

Heaven Wang 的专栏 11万+

Redis Redis介绍、安装 - Redis客户端

目录redis是什么,他的应用场景是什么?Redis的一些主要特点和应用场景:redis的官方网站:Redisredis是键值型数据库:(也就是key-value模式)(跟python的字典很像)认识NoSQL?SQL和NoSQL的区别数据库结构之间的区别数据库关联之间的区别SQL查询和非SQL查询的区别事务上的差异总结认识Redis特征:一、安装Redis1、单机安装Redis(linux安装 – Centos7.9)1.1、安装Redis依赖(Redis是基于C语言编译的,因此首先需要安装Redis所需

m0_51274464的博客 1534

Redis详解

现在是大数据时代(一般的数据库已经解决不了的数据:大数据(海量存储和并行计算))1、单机时代(如MySQL)的瓶颈数据量太大,一个机器存不下数据的索引(MySQL单表300万条数据,一定要建立索引),一个机器内存放不下访问量大(MySQL读写混合 — 性能降低),一个服务器承受不了2、Memcached缓存(减轻服务器的压力) + MySQL + 垂直拆分(读写分离,多个MySQL服务器,有的值负责读,有的值负责写)

jiuyebaqi的博客 2万+

【Redis】Redis基础——Redis的安装及启动

GitHub上的大神编写了Redis的图形化桌面客户端,不过该仓库提供的是RedisDesktopManager的源码,并未提供windows安装包。# 利用redis-cli来执行 shutdown 命令,即可停止 Redis 服务,因为之前配置了密码,因此需要通过 -u 来指定密码。当然,在连接redis时指定密码,还能连接后使用 AUTH 指定用户名和密码,这里我没有用户名,直接指定密码就好了。2. 修改redis.conf文件中的一些配置,进入后,输入/,在输入内容回车就能搜索到了。

菜鸟的博客 4533

Chapter 4 Ripple-Based Control Technique Part I

本文介绍了DC-DC转换器的纹波控制技术,重点分析了迟滞控制、恒定开通时间控制、恒定关断时间控制等方案的工作原理及优缺点。纹波控制无需补偿网络,具有快速瞬态响应和结构简单的优势,特别适合电池供电应用。其中,恒定开通时间控制在轻载时能自动延长关断时间,实现伪定频工作;而恒定关断时间控制轻载效率较低。文章还讨论了纹波注入技术解决Boost转换器右半平面零点问题,并比较了不同控制方案在负载瞬态下的性能表现。最后指出基于纹波的控制技术在提高调节精度和降低EMI方面的改进方向。

2304_76736886的博客 1302

【Redis篇】简述Redis | 详解Redis命令

Redis命令

小吉妙妙屋 1万+

如何利用GMS构建地下水数值模拟模型?

第一步:点图中三维网格的图标然后点Grid→Create Grid这个界面是用于创建一个有限差分网格的设置窗口。它允许你定义网格在三维空间中的范围、分辨率以及其他相关属性。这个界面提供了一个直观的方式来定义一个三维的有限差分网格,你需要指定每个维度上的范围、划分的单元格数量,以及一些控制单元格大小分布和网格方向的参数。这个网格通常会被用于数值模拟,例如地下水流模拟。在点击 "OK" 之前,请务必仔细检查所有参数是否符合你的建模需求。1. X-Dimension (X 轴维度)2. Y-Dimension (

weixin_44259522的博客 2093

Redis

Redis是一种开放源代码(BSD许可)的内存中数据结构存储,用作数据库,缓存和消息代理。Redis提供数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图,超日志,地理空间索引和流。Redis具有内置的复制[集群],Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性[磁盘],并通过Redis Sentinel和Redis Cluster自动分区提供了高可用性【集群】。简单来说:redis他是免费的软件,它可以用作数据库,缓存,消息代理。

weixin_64916888的博客 2688

SpringBoot 通过 JMS 集成 IBM MQ

IBM MQ 作为老牌的企业级消息中间件,虽然在当下云原生时代已不再是主流选择,但在金融、银行、保险等传统行业的核心业务系统中仍然占据着重要地位。这些行业对系统的稳定性、可靠性和事务一致性有着极高的要求,IBM MQ 正是在这些方面表现出色。尽管近年来 RabbitMQ、Apache Kafka 等新一代消息中间件在新兴项目中更受欢迎,但许多金融公司和大型企业仍在使用 IBM MQ 作为核心业务系统的消息传递基础设施。

小单的博客专栏 952

【计算机组成原理】实验4:单周期CPU(Verilog)中海大

【计算机组成原理】实验4:单周期CPU

m0_63023532的博客 3660

Redis(Redis基础,SpringCache,SpringDataRedis)

本文详细讲解了redis基础内容,以及Spring Cache,Spring Data Redis技术的使用

qq_49474843的博客 2940

文华指标源码—区间彩带

这就是当年东方财富软件终端里主打经典的指标、主要揭示主力成本区域。

qq2054129753的博客 888

【Redis】初识 Redis

本期内容主要介绍Redis是什么,认识 Redis,介绍 Redis 的特性以及 Redis 为什么快,并简单介绍了分布式系统。

爱编程爱运动的博客 1万+

ffmpeg在windows的安装、合并、切片、.m4s、.m3u8处理

自己处理视频,我用的工具是 ffmpeg,因为涉及到.m3u8格式和.m4s格式的一些操作。ffmpeg的介绍我就不多说了,这里是它的官网地址: https://ffmpeg.org/ ,这里是文档: https://ffmpeg.org/documentation.html (看的头大,没咋看下去)...

一只爱吃糖的小羊 2689

SAP MM自动化进阶:STO交货单自动创建的配置与优化

本文深入解析了SAP MM模块中实现公司间库存调拨订单(STO)交货单自动创建的完整配置流程与优化策略。通过激活自动交货与绑定发货点两大核心配置,打通自动化链路。重点探讨了如何集成ATP可用性检查以智能处理库存不足等异常场景,确保自动化流程的可靠性与业务贴合度,并提供了进阶监控与问题排查方法,助力企业显著提升供应链效率。

weixin_29206669的博客 124

【Redis】Redis键值存储

首先要强调一点:Redis是key value类型的数据库,Redis所说的数据类型都是key value中的value的数据结构,而key都是字符串。在本文中,我们对Redis的键值存储进行了全面的概述和介绍。首先,我们了解了Redis的五大基本数据类型:String(字符串)、Hash(哈希)、List(列表)、Set(集合)和Zset(有序集合),并探讨了它们各自的特点和用法。

白晨的博客 2257

python音频信号分析

声音以具有诸如频率、带宽、分贝等参数的音频信号的形式表示,典型的音频信号可以表示为幅度和时间的函数

MAY的博客 2785

【Redis】Redis的启航之路:Ubantu操作系统下安装Redis

【Redis安装与配置指南】本文详细介绍了Redis数据库的安装步骤:通过apt获取安装包(Y确认安装),用netstat验证服务启动(默认6379端口)。重点讲解了配置文件修改:将IP从127.0.0.1改为0.0.0.0、关闭保护模式以允许远程连接,并重启服务生效。最后演示了使用redis-cli客户端连接服务器及ping测试连通性(返回PONG即成功)。全文提供完整命令行操作指引,适合Redis初学者快速搭建环境。

GGBond778的博客 1975

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Redis——Redis简介

Redis简介、Reids5新特性、基本数据类型:String、Hash、List、Set、Sorted Set、Redis HyperLogLog

码说芯语的博客 5585

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【Redis】贰 —— Redis基本命令

本文对于Redis中的一些命令进行了介绍以及使用案例

2401_86777036的博客 3090

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Linux安装Redis以及Redis三种启动方式

也就是上面我们说的,窗口要一直打开。后台进程启动搞完之后,以后开启redis后,就可以去进行其他操作了(在src目录下 ./redis-server /opt/soft/redis-4.0.6/redis.conf启动redis)。此时Redis服务已经可以成功启动了,但是小问题来了,界面一直停留在Redis服务窗口中,按ctrl+c虽然可以屏蔽服务窗口,但是也会结束Redis服务。./redis-server代表要启动redis,后面一串代码进入redis.conf来开启redis,就是路径。

m0_74825466的博客 3817

Redis:初识Redis

介绍了Redis的基本概念,在软件开发中的定位,以及安装方式

博客网站 https://async-area.com 2070

[redis系列] redis脚本

Redis Lua 脚本功能使得用户能够在 Redis 服务器端执行自定义的 Lua 脚本,从而实现更高效、更灵活的数据操作。Lua 脚本运行在 Redis 服务器内部,这意味着你可以减少客户端与服务器之间的通信开销,并且可以通过原子操作确保多个 Redis 命令的执行一致性。组合功能:Lua 脚本能够将 Redis 中的简单命令组合起来,从而实现复杂的业务需求,避免多次网络往返。数据操作原子性:通过 Lua 脚本,开发者可以在 Redis 中执行应用程序逻辑,对多个键进行条件更新。

深耕后端、偏爱架构,用代码与设计构建可靠系统 1681

【Redis】Spring使用Redis

Spring使用Redis

yj20040627的博客 1782
上一篇: My_SQL day3
下一篇: Mongodb
WuMingf_
博客等级 码龄4年 209粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值