Redis的介绍与使用

news2024/12/22 2:34:27

文章目录

  • Redis简介
  • 安装Redis
  • Redis常用命令
    • 全局命令
    • String类型数据
    • Hash哈希类型数据
    • List列表类型数据
    • Set集合类型数据
    • SortedSet有序集合类型数据
  • 一些选择题
  • 一些选择题

Redis简介

  • Redis是一款基于键值对的NoSQL数据库,它的值支持多种数据结构: 字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。

NoSql数据库:not only sql,除关系型数据库之外的所有非关系型数据库

  • Redis将所有的数据都存放在内存中,所以它的读写性能十分惊人。 同时,Redis还可以将内存中的数据以快照或日志的形式保存到硬盘上,以保证数据的安全性。

  • 快照形式:即RDB形式,直接将内存中数据原原本本传硬盘上

    • 优点:数据体积小,恢复数据到内存很快

    • 缺点:将内存数据一下子存到硬盘上很耗时,存储时可能造成阻塞,对其他业务有影响

    • 不适合实时去做,适合几个小时做一次数据备份

  • 日志形式:AOF形式,每执行一个redis命令,就以日志的形式存储一次

    • 优点:实时、快速

    • 缺点:以追加的形式存储,体积大占空间。恢复速度慢(恢复时会将硬盘中命令全部跑一次)

  • Redis典型的应用场景包括:

    • 缓存:频繁访问的数据,从内存上取比硬盘上快

    • 排行榜:如热门帖子等,访问是很频繁的,进行缓存效率高

    • 计数器:每访问一次帖子浏览量加一,数据存硬盘效率太低

    • 社交网络:点赞关注等。放内存更快访问;且关系型数据库里不方便存(就一个数据还要建一张表),以键值对形式存到内存中

    • 消息队列:不是专门做消息队列的工具,项目对消息队列要求不是特别高时,可以用redis

    • … …

安装Redis

https://redis.io/ :下载Linux系统的redis安装包,查询redis的数据命令等

https://github.com/microsoftarchive/redis :微软做的windows系统的redis安装包

.msi 安装程序 . zip 压缩包

安装时,仅需改存储路径

将redis的安装路径设置为系统变量

Redis常用命令

官网:https://redis.io/

全局命令

cmd中启动redis: redis-cli

image-20240220155834716

redis内置16个库,无名字,用0-15的数字索引进行区分

切换库: select 库索引

**刷新当前库:**flushdb 刷新后清除库中数据

image-20240220160318638

**查询当前库里的key:**keys * 所有key

​ keys test* 以test开头的key

image-20240220171008973

**查看key的值类型:**type key

image-20240220171126217

**查看key是否存在(1真0假):**exists key [key …]

**删除key:**del key [key …]

image-20240220171328921

**设置key过期时间:**expire key seconds

seconds为过期秒数,过了这个秒数,会自动删除key

image-20240220171602678

String类型数据

**key命名规则:**多个单词之间用 “ : ” 分隔,如 test:count

添加数据: set key名 value值

**获取数据:**get key名 value值

image-20240220160631638

**数据自增1:**incr key

数据自减1: decr key

image-20240220160803157

Hash哈希类型数据

redis中数据以key-value形式存储,因此hash类型数据,key名相当于hash表名,fields相当于表中键值对的键名

**存数据:**hset key名 fields value

**取数据:**gset key名 fields

image-20240220162033913

List列表类型数据

很灵活,若看作横向容器,支持从左边()往里装/取数据,也支持从右边往里装/取数据。

  • 左进右出:栈
  • 左进左出:队列

命令中,l 代表left,r 代表right

从左边存数据:lpush key值 value [value…]

越先放入索引越大,越后放入索引越小

如按101,102,103的顺序朝list中放数据,则list中数据从左到右为 103,102,101,索引从左到右为0,1,2

**查看list长度:**llen key

**查看list中指定索引下的值:**lindex key index

image-20240220163408214

**查看某个索引范围内的值:**lrange key start stop

​ 0表示第一个数据,-1表示最后一个数据

image-20240220164342458

**从右边取数据:**rpop key

image-20240220164705602

Set集合类型数据

列表有序,数据可重复

集合无序,数据不可重复

**存数据:**sadd key member [member…]

s代表set

**查看集合中元素个数:**scard key

从集合中随机的弹出一个元素:spop key [count]

**该命令可用于抽奖:**set中存放不同用户的id,每个id只有一个,每次随机弹出一个id作为中奖用户

image-20240220165329220

**查看集合中元素:**smember key

image-20240220165646919

SortedSet有序集合类型数据

给每一个存的值,附加一个分数,按分数排序

**存数据:**zadd key score member [score member …]

**查看集合中元素个数:**zcard key

**查询元素对应的分数:**zscore key member

**查询元素排名(默认由小到大):**zrank key member

**取某个排名范围内的数据:**zrange key start stop

image-20240220170637353

一些选择题

4.2【瑞客论 坛 www.ruike1.com】

B

4.3【瑞客论 坛 www.ruike1.com】

C

4.4【瑞客论 坛 www.ruike1.com】

A
rt stop

[外链图片转存中…(img-0CQye3dU-1709434100818)]

一些选择题

[外链图片转存中…(img-SqV0qa5c-1709434100819)]

B

[外链图片转存中…(img-iWVOX7MR-1709434100819)]

C

[外链图片转存中…(img-rTkfsOqd-1709434100820)]

A

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1501463.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Gartner对未来5年全球信息安全和风险管理市场的预测分析:影响市场的四大因素及对相关产品市场的影响

到 2023 年,信息安全和风险管理市场的最终用户支出将增长至 1850 亿美元(现价美元),货币稳定增长率为 13.4%。到2027年,市场规模将达到2870亿美元,按固定汇率计算,2022年至2027年的复合年增长率…

使用MyBatis完成CRUD

Insert Map <mapper namespace"car"><!--insert sql&#xff1a;保存一个汽车信息--><insert id"insertCar">insert into t_car(id,car_num,brand,guide_price,produce_time,car_type)values(null,102,丰田mirai,40.30,2014-10-05,氢能…

Java中的优先队列PriorityQueue如何排序

目录 一、基本数据类型的排序 &#xff08;1&#xff09;升序 &#xff08;2&#xff09;降序 二、自定义类型如何排序 &#xff08;1&#xff09;升序 &#xff08;2&#xff09;降序 既然大家想要了解优先队列的排序&#xff0c;那么说明已经知道什么事优先队列了&…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Blank)

空白填充组件&#xff0c;在容器主轴方向上&#xff0c;空白填充组件具有自动填充容器空余部分的能力。仅当父组件为Row/Column/Flex时生效。 说明&#xff1a; 该组件从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 子组件…

【前端Vue】社交信息头条项目完整笔记第1篇:一、项目初始化【附代码文档】

社交媒体-信息头条项目完整开发笔记完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;一、项目初始化使用 Vue CLI 创建项目,加入 Git 版本管理,调整初始目录结构,导入图标素材。二、登录注册准备,实现基本登录功能,登录状态提示,表单验证。三、个人中心&am…

蓝桥杯练习题——归并排序

1.火柴排队 思路 1.求最小值的时候&#xff0c;可以直接按升序排序&#xff0c;这样得到的值就是最小值 2.求最小交换次数的时候&#xff0c;不能直接排序&#xff0c;因为只能交换相邻的数&#xff0c;只需要知道他们的相对大小&#xff0c;所以可以先用离散化&#xff0c;把…

打造禹州中医药大模型,以AI驱动业务创新(内附孙思邈GPT内测版)

大禹智库 第78 期&#xff08;总第409 期&#xff09; 2024年 3 月 4 日 在中医药传承与发展的关键时期&#xff0c;结合许昌市的地域特色和产业优势&#xff0c;大禹智库提出“打造禹州中医药大模型&#xff0c;以AI驱动业务创新”的战略构想。本报告围绕构建禹州中医药现代化…

七彩虹@电脑cpu频率上不去问题@控制中心性能模式cpu频率上不去@代理服务器超时@账户同步设置失败

文章目录 windows电脑cpu频率上不去新电脑的系统时间问题系统时间不准造成的具体问题举例代理超时vscode同步请求失败自动校准时间 windows电脑cpu频率上不去 问题描述,标压处理器的笔记本,cpu频率上不去 如果cpu没问题的话,就应该是系统限制了功耗导致的有的笔记本有控制中心…

10大主流压力/负载/性能测试工具推荐

在移动应用和Web服务正式发布之前&#xff0c;除了进行必要的功能测试和安全测试&#xff0c;为了保证互联网产品的服务交付质量&#xff0c;往往还需要做压力/负载/性能测试。然而很多传统企业在试水互联网的过程中&#xff0c;往往由于资源或产品迭代速度等原因忽视了这一块工…

msvcr110.dll丢失的5种修复方法,快速修复msvcr110.dll缺失问题

MSVCR110.dll文件的丢失可能会引发一系列的问题与不便&#xff0c;严重影响到用户的计算机使用体验。首先&#xff0c;由于MSVCR110.dll是Microsoft Visual C Redistributable Package的一部分&#xff0c;它的缺失可能导致许多基于此运行库编译的应用程序无法正常启动或运行&a…

老阳分享:视频号带货的四大技巧

视频号带货作为新兴的电商模式&#xff0c;在微信这个庞大的社交平台上展现出了巨大的潜力。要想在视频号带货领域取得成功&#xff0c;需要掌握一定的技巧。本文将为您详细解析视频号带货的四大技巧&#xff0c;感兴趣的朋友一起去看看吧。 一、内容创新 内容创新是视频号带货…

ROS 2基础概念#6:服务(Service)| ROS 2学习笔记

服务&#xff08;Service&#xff09;是 ROS 2 计算图中节点通信的另一种方法。 服务基于调用和响应模型&#xff0c;而不是主题的发布者-订阅者模型。 虽然主题允许节点订阅数据流并获取持续更新&#xff0c;但服务仅在客户端专门调用时才提供数据。 ROS 2服务的基本概念 ROS…

5个实用的PyCharm插件

大家好&#xff0c;本文向大家推荐五个顶级插件&#xff0c;帮助开发人员提升PyCharm工作流程&#xff0c;将生产力飞升到新高度。 1.CodiumAI 安装链接&#xff1a;https://plugins.jetbrains.com/plugin/21206-codiumate--code-test-and-review-with-confidence--by-codium…

RabbitMQ架构详解

文章目录 概述架构详解核心组件虚拟主机&#xff08;Virtual Host&#xff09;RabbitMQ 有几种广播类型 概述 RabbitMQ是⼀个高可用的消息中间件&#xff0c;支持多种协议和集群扩展。并且支持消息持久化和镜像队列&#xff0c;适用于对消息可靠性较高的场合 官网https://www.…

Thingsboard学习杂记

知识杂记 1.遵循磁盘绑定的内存数据库和遵循磁盘支持的内存数据库 遵循磁盘绑定的内存数据库和遵循磁盘支持的内存数据库有不同的工作方式&#xff0c;它们的优点和缺点也不同。 遵循磁盘绑定的内存数据库的优点&#xff1a; 数据库可以支持更大的数据集合&#xff0c;因为数…

2024 批量下载公众号文章内容/阅读数/在看数/点赞数/留言数/粉丝数导出pdf文章备份(带留言):公众号记忆承载近1500篇历史文章在线查看,找文章方便了

关于公众号文章批量下载&#xff0c;我之前写过很多文章&#xff1a; 视频更新版&#xff1a;批量下载公众号文章内容/话题/图片/封面/音频/视频&#xff0c;导出html&#xff0c;pdf&#xff0c;excel包含阅读数/点赞数/留言数 2021陶博士2006/caoz的梦呓/刘备我祖/六神读金…

Threejs着色器(GPU)编程——感温管网

管网,作为支撑现代城市运转的重要基础设施,是隐藏在地面之下的庞大工程网络。这些管网如同城市的血脉,负责输送各种必要的资源,如水源、热力、燃气等,同时排除废水和其他废弃物。然而,由于其位于地下,人们往往难以直接感知其存在和运行状态。为了保障这些地下管网的安全…

王道机试C++第 4 章 字符串:字符串内容详解及三个小程序 Day29

第 4 章 字符串 本章介绍一种基础数据类型——字符串&#xff0c;并且介绍一些字符串处理的方法及字符串匹配的方法。虽然字符串的内容非常基础&#xff0c;但是十分重要。希望读者能够好好学习本章的内容&#xff0c;为此后的学习打下良好的基础。 4.1 字符串内容详解 由于 …

3月求职黄金期!如何打造自己的岗位优势?这6大分析维度很重要!

三月份&#xff0c;又到了一年的求职黄金期。在今年这场求职大队中&#xff0c;想要找到一份满意的工作&#xff0c;你不仅要学会打造一份高质量简历&#xff0c;还要懂得完美应对HR的各项提问。 一、岗位能力的6大分析维度 虽说是求职黄金期&#xff0c;但找工作也不是随便找…

一键查看:大厂网站都用了啥技术栈,有图有真相。

本次我们采用Wappalyzer插件来看下国内大厂的网站都采用了什么技术架构&#xff0c;文章最后由Wappalyzer的安装方法。 今日头条网站 淘宝网站 哔哩哔哩 京东商城 花瓣网 CSDN 国务院 网易 58同城 腾讯网 如何安装Wappalyzer 用Edge浏览器即可