【Redis】String 的基本操作和场景说明

windows系统中在 cmd 窗口演练 Redis 基本操作命令 Not Relational(非关系型):没有对SQL支持、不能去建立表与表的关系;Redis是一个NoSQL、基于Key-value键值对的存储引擎; 阅读详情

在 Redis 中,String 是最基本的数据类型,也是其他复杂数据类型(如列表、集合、哈希表等)的基础。String 类型可以存储普通字符串、整数、浮点数,甚至可以存储二进制数据(如图像、音频文件等)。

一、String 类型的基本操作

1. 设置与获取值
  • SET key value:将指定的 key 设定为 value,如果 key 已经存在,会覆盖旧值。

    SET name "Redis"

  • GET key:获取指定 key 的值,如果 key 不存在,返回 nil。

    GET name # 返回 "Redis"

2. 计数操作
  • INCR key:将指定 key 的值增加 1。如果 key 不存在,Redis 会将 key 的值设为 0 后再执行增加操作。如果 key 的值不是整数类型,会返回错误。

    INCR counter # counter 的值变为 1

  • DECR key:将指定 key 的值减 1。

    DECR counter # counter 的值变为 0

  • INCRBY key increment:将指定 key 的值增加 increment。

    INCRBY counter 5 # counter 的值变为 5

  • DECRBY key decrement:将指定 key 的值减去 decrement。

    DECRBY counter 3 # counter 的值变为 2

  • INCRBYFLOAT key increment:将指定 key 的值增加指定的浮点数。

    INCRBYFLOAT balance 1.5 # balance 的值变为 1.5

3. 字符串操作
  • APPEND key value:将指定 key 的值与 value 连接。如果 key 不存在,Redis 会将 key 设为 value。

    APPEND name " Database" # name 的值变为 "Redis Database"

  • STRLEN key:获取指定 key 的值的长度(字节数)。

    STRLEN name # 返回 14,"Redis Database" 的长度

  • GETRANGE key start end:返回 key 的值的子字符串,start 和 end 是字符串的索引(从 0 开始)。如果 end 为 -1,表示取到字符串的末尾。

    GETRANGE name 0 4 # 返回 "Redis"

  • SETRANGE key offset value:从指定的偏移量开始,用 value 替换 key 中的一部分值。

    SETRANGE name 6 "DB" # name 的值变为 "Redis DBbase"

4. 位操作
  • SETBIT key offset value:将指定 key 的值在偏移量 offset 处的二进制位设为 value(0 或 1)。

    SETBIT binaryKey 7 1

  • GETBIT key offset:获取指定 key 的值在偏移量 offset 处的二进制位的值。

    GETBIT binaryKey 7 # 返回 1

  • BITCOUNT key [start end]:计算指定 key 的值在 [start, end] 范围内的二进制位中 1 的

    BITCOUNT binaryKey # 返回 1

5. 过期与持久化
  • SETEX key seconds value:设置指定 key 的值,并设定过期时间(秒)。

    SETEX tempKey 60 "temporary" # 60 秒后 key 会过期

  • PERSIST key:移除指定 key 的过期时间,使其永久保存。

    PERSIST tempKey

二、String 的使用场景

1. 缓存数据

String 类型通常用于缓存数据,例如:

  • 用户会话信息:将用户的会话数据(如登录状态、用户权限等)存储在 Redis 中,并设置过期时间。
  • 页面缓存:将渲染后的 HTML 页面片段或 JSON 数据存储在 Redis 中,提高访问速度。
  • API 响应缓存:将计算或查询耗时较长的 API 响应结果存储在 Redis 中,减少服务器负载。
2. 计数器和限流

Redis 的 String 类型非常适合实现计数器和限流器:

  • 网站访问计数:使用 INCR 和 DECR 操作,记录网站的访问量。
  • 限流器:使用 INCRBY 和过期时间,限制用户在一定时间内的操作次数,如登录尝试次数、接口调用次数等。
3. 数据存储

由于 String 可以存储二进制数据,它也被用于存储一些简单的二进制对象或序列化后的复杂对象:

  • 用户配置:存储用户的个性化配置或偏好设置。
  • 临时存储:例如,存储上传文件的临时数据或分片数据。
4. 简单消息队列

Redis 的 String 也可以用于实现一个简单的消息队列:

  • 任务队列:生产者将任务信息存储到 String,消费者轮询获取任务并处理。
VSCode + Clangd 配置避坑实录:从‘红波浪线’到完美代码提示的完整心路 本文详细记录了VSCode与Clangd配置过程中的常见问题及解决方案,从编译数据库生成到参数调优,帮助C++开发者快速解决代码提示失效、头文件找不到等问题,实现完美代码补全体验。重点介绍了Clangd与LLDB的集成配置及性能优化技巧,适用于Linux和跨平台开发环境。 阅读详情

相关推荐

从加权最小二乘(WLS)到IAA:手把手推导DOA估计中的迭代自适应核心公式

本文深入解析了从加权最小二乘(WLS)到迭代自适应算法(IAA)在DOA估计中的数学推导与应用。通过动态调整加权矩阵,IAA在低快拍数、相干源等复杂场景中展现出卓越性能,显著提升角度分辨率和检测概率。文章详细介绍了算法核心步骤、工程优化策略及前沿发展,为雷达探测和无线通信领域提供重要参考。

weixin_30847865的博客 285

Redis中的String类型应用场景,看这一篇就够了。

在分布式系统中,用户的每次请求会访问到不同的服务器,这就会导致session不同步的问题,假如一个用来获取用户信息的请求落在A服务器上,获取到用户信息后存入session。下一个请求落在B服务器上,想要从session中获取用户信息就不能正常获取了,因为用户信息的session在服务器A上,为了解决这个问题,使用redis集中管理这些session,将session存入redis,使用的时候直接从redis中获取就可以了。当setnx返回1时,表示获取锁,做完操作以后del key,表示释放锁;

github_31369641的博客 601

将3DMax编辑的动画,导入给已经绑定蒙皮好的模型给Unity使用

现在程序猿想做独立游戏,即容易,也难。 说容易,引擎越来越傻瓜化。 说难,到哪去找靠谱的美术? 好在伟大的AssetStore(还有淘宝上)有大批不赖的资源可以用。 现成的模型,是好,但是,没有配套的动作,却是一件让人头疼的事情,即使用IK动画,也不能完美的弥补这一缺陷。 虽然Unity具备 retargeting 功能,但是,也不是万能的,很多情况下,非标准的骨骼会导致

正经的时候都在打游戏 1万+

redis针对string的命令及应用场景

例如MySQL 的数据库名为 vs,⽤⼾表名为 user_info,那么对应的键可以使⽤"vs:user_info:6379"、“vs:user_info:6379:name” 来表⽰,如果当前 Redis 只会被⼀个业务使⽤,可以省略业务名 “vs:”。如果key不存在, 则让新的value覆盖旧的value, 可能回盖面原来的数据类型, 原来的key的生存时间也会失效。如果对应的 key 不存在或者对应的数据类型不是 string,返回 nil。如果对应的值是负数,则视为减去对应的值。

m0_73992740的博客 1041

具身智能四大技术路线:VLA、大小脑、世界模型与强化学习

具身智能是机器人实现感知-决策-执行闭环的核心范式,其本质在于物理世界中的具身化交互能力。技术演进围绕如何高效建模环境、理解指令并生成鲁棒动作展开,衍生出四大主流路径:视觉-语言-动作(VLA)端到端学习、大小脑分层控制、世界模型驱动预测,以及强化学习原生策略优化。VLA强调多模态对齐与泛化能力,适合语义理解优先场景;大小脑架构兼顾实时性与可解释性,是工业落地的高可靠选择;世界模型追求内在物理模拟,代表长期认知跃迁方向;强化学习则扎根仿真试错,在力控、抓取等连续控制任务中展现强鲁棒性。本文聚焦这四大路线的技

weixin_32181267的博客 286

微信h5 支付,已经获得weixin://wap/pay?prepayid,但是无法调起微信客户端支付

结果几个接口,最终获得到到一直包含调起微信客户端的支付链接 但是直接打开这个页面,却不能调起微信客户端支付,原因是,在打开新页面的时候,需要设置a.rel = "noreferrer"; <body> <a href="javascript:void(0)" onclick="openNewWindowNoreferrer(this)">点击支付</a&...

qq_31683775的博客 4万+

Redis String应用场景 - 如何做好API限频

redis string 类型的常用使用场景

Applosl的博客 538

手把手配置:用Synopsys VDK为英飞凌TC4x系列MCU做虚拟原型开发

本文详细介绍了如何使用Synopsys VDK为英飞凌TC4x系列MCU进行虚拟原型开发,涵盖开发环境搭建、关键外设虚拟化配置、AUTOSAR栈集成及虚拟调试与性能调优全流程。通过虚拟原型技术,开发者可提前6-12个月启动软件开发,显著提升汽车电子项目的开发效率。

weixin_30606461的博客 282

零基础学习Redis(6) -- string类型命令使用

redis中,不同的数据结构有不同的操作命令。redis中的string是按照二进制存储的,不会对数据做任何编码转换。

2303_78892316的博客 960

RK3568下MIPI屏幕调试技巧

通过合理配置设备树节点、精确计算像素时钟并完成编译烧录,可高效实现RK3568平台MIPI屏幕的点亮与显示调试。关键在于严格遵循屏幕规格书参数,结合内核日志定位问题,逐步优化时序配置。掌握这一流程后,开发者可快速适配不同分辨率、刷新率的MIPI屏幕,为嵌入式系统显示模块开发奠定基础。如果在调试中遇到特定问题(如驱动匹配失败、时钟计算误差),建议优先查阅屏幕规格书和RK3568芯片手册,或通过内核社区(如Linux-DRI邮件列表)获取支持。

文石_2009的博客 1196

开源模型应用落地-qwen模型小试-Qwen3-8B-快速体验(一)

阿里云推出国内首个集成“快思考”与“慢思考”能力的 Qwen3-8B 大语言模型,以80亿参数和 128K 上下文支持,重塑AI应用边界并助力开发者高效部署

以微薄之力,予他人些许温暖. 2万+

redis之字符串类型(string)--计数器实现

字符串类型是redis最基本的类型,如果仅仅使用字符串类型,redis和memcache操作非常相近。唯一不同就是redis字符串可以支持512M,而memcache最多只能支持1M。 例子:设置和获取字符串的值 > set str_name lizhibin OK > get str_name "lizhibin" S.N 命令 & 描述 1 SE

zhibin的程序日记 3768

使用LSTM进行多任务学习:共享模型预测多个目标

多任务学习是一种机器学习方法,旨在通过同时学习多个相关任务来提高模型的学习效率和泛化能力。MTL的核心思想是共享模型的参数,从而在不同任务之间捕捉到共享的特征。长短期记忆网络(LSTM)是循环神经网络(RNN)的一种改进版本,专门用于解决传统RNN在处理长序列时出现的梯度消失和梯度爆炸问题。LSTM通过引入多个门控机制(输入门、遗忘门和输出门)来控制信息的流动。本文详细探讨了如何使用LSTM进行多任务学习。我们介绍了多任务学习的理论基础、LSTM的特点,以及如何构建和训练一个多任务LSTM模型。

斌擎科技 1141

Redis(105)Redis的数据类型支持哪些操作?

Redis支持多种数据类型,每种类型提供特定操作: String:基本键值存储,支持SET/GET、自增/自减等操作。 Hash:存储字段-值映射,支持HSET/HGET等操作。 List:双向链表结构,支持LPUSH/RPOP等头部/尾部操作。 Set:无序唯一集合,支持SADD/SMEMBERS等操作。 Sorted Set:带分数的有序集合,支持ZADD/ZRANGE等范围查询。 Bitmap:位操作,支持SETBIT/BITCOUNT等。 示例代码展示了Java(Jedis)如何操作这些数据类型,如

qq_43012298的博客 764

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Redis常用的命令(附带全套命令)

一. 常用命令 通用命令(适合所有数据类型): keys * #查看所有的key type name #查看name的数据类型 del name #删除key为name的数据 常用的命令(赋值和查看): string的赋值和查看: 赋值: set key1 v1 查看: get key1 list的赋值和查看: 赋值: LPUSH list one # 将一个值或者多个值,插入到列表头部(左) RPUSH list righr # 将一个值或者多个值,插入到列表尾部(右) 查

richer__的博客 338

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Redis——五大数据类型(String、Hash、List、Set、ZSet)简要介绍

Redis——五大数据类型(String、Hash、List、Set、ZSet)简要介绍

贝尔摩德苦艾酒 9138

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Redis基础之五大数据类型理论解释+过程代码(string、list、hash、set、sorted set)

Redis五大数据类型 文章目录Redis五大数据类型一、String数据类型1.SET、GET、APPEND、STRLEN:2.INCR、DECR、INCRBY、DECRBY:(增加与减少)3.GETSET:4.SETEX:5.SETNX:6.MSET、MGET、MSETNX:二、LIST数据类型1.LPUSH、LPUSHX、LRANGE:2.LPOP、LLEN:3.LREM、LEST、LINDEX、LTRIM4.LINSERT5.RPUSH、RPUSHX6.RPOP、RPOPLPUSH三、Hash数据类

Gloom丿郁的博客 235

Redis 数据类型

String是redis最基本的类型,最大能存储512MB的数据,String类型是二进制安全的,即可以存储任何数据、比如数字、图片、序列化对象等;

lxplxplike的博客 733

Redis的数据类型详解及其应用场景

Redis数据类型 string、hash、list、set、sorted_set Redis数据存储格式:redis自身是一个Map,其中所有的数据都是采用key:value的形式存储 String类型数据 基本操作:set,mset String类型数据的扩展操作 1、设置数值数据增加执行范围 incr key incby key increment incrbyfloat key increment 2、设置数值数据减少指定范围 decr key decrbt key .

Lavender-csdn的博客 343

Redis的基本命令与数据类型

一、Redis的基本命令 redis-cli -a password shutdown :关闭redis ./redis_init_script stop :关闭redis redis-cli :进入到redis客户端 auth pwd :输入密码 set key value :设置缓存 get key :获得缓存 del key :删除缓存 redis-cli -a password ping :查看是否存活 select index:切换数据库,总共默认16个 flushdb:删除当前下边db中的数据

qq_42282792的博客 231

05 redis(进阶)

redis 阶段一、认识redis 1、什么是redis Redis是由意大利人Salvatore Sanfilippo(网名:antirez)开发的一款内存高速缓存数据库。Redis全称为:RemoteDictionary Server,该软件使用C语言编写,Redis是一个key-value存储系统,它支持丰富的数据类型,如:string、list、set、zset(sorted set...

weixin_30633405的博客 71

Redis(简介)

Redis介绍 Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。Redis的外围由一个键、值映射的字典构成 与其他非关系型数据库主要不同在于:Redis中值的类型,不仅限于字符串 redis提供五种数据类型:string,hash,list,set及zset(sorted set) Redis性能极高,读的速度是110000次/...

Mr.小健的博客 426

Redis-----数据结构介绍及基本类型的常用命令

Redis的SortedSet是一个可排序的set集合,与Java中的TreeSet有些类似,但底层数据结构却差别很大。SortedSet中的每一个元素都带有一个score属性,可以基于score属性对元素排序,底层的实现是一个跳表(SkipList)加 hash表。Redis的Set结构与Java中的HashSet类似,可以看做是一个value为null的HashMap。HSETNX:添加一个hash类型的key的field值,前提是这个field不存在,否则不执行。

qq_69169909的博客 888

Redis(一)数据类型

Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。 string类型是二进制安全的(见Redis中的String二进制安全)。 ...

weixin_38399962的博客 367

redis数据类型

五种数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型...

weixin_33872660的博客 66

Redis数据类型之String的应用场景(案例详解)

【辰兮要努力】:hello你好我是辰兮,很高兴你能来阅读,昵称是希望自己能不断精进,向着优秀程序员前行! 博客来源于项目以及编程中遇到的问题总结,偶尔会有读书分享,我会陆续更新Java前端、后台、数据库、项目案例等相关知识点总结,感谢你的阅读和关注,希望我的博客能帮助到更多的人,分享获取新知,大家一起进步! 吾等采石之人,应怀大教堂之心,愿大家奔赴在各自的热爱里… 文章目录一、文章序言二、常用命令三、业务场景 一、文章序言 Redis概念:Redis (REmote DIctionary Serv.

末尾卡片和博主交流学习! 6591
上一篇: 【Redis】字符串原理--简单动态字符串SDS
下一篇: 【Mongo】mongodump/mongoexport/mongoimport 操作
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

上善若水-学者至上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值