当前位置: 首页 > news >正文

掌握Redis,看完这篇文章就够了

一,数据库的配置

内存数据库 MySQL与mongodb都是以文件的形式存储在磁盘上的
redis数据在内存中,操作内存的速度远远高于磁盘并且redis数据最终也可以存储在磁盘上
redis的存储结构为简直存储数据库类似于python中的字典的存储方式
redis的服务器与客户端:

  • 启动服务器 redis = server配置文件路径
  • 客户端连接服务器 redis-cil -h -主机ip
    配置文件
  • dbfilename 数据文件
  • requirepass 用户密码
  • masterauth 主机密码
  • logfile 日志文件
  • port 6379
  • database 16
  • loglever 日志等级
  • bind 绑定ip
    获取配置信息
  • config get* 获取所有配置
  • config get requirepass

二,数据库的五种数据类型及方法

redis中的数据类型的使用只能在python中使用

2.1 字符串

  • set(k,b) 设置单个
  • get(k) 获取单个
  • mset(k:v,k:v)设置多个
  • mget(k,k,k,) 获取多个
  • incr 加1
  • decr 减1
  • decrby 减 增量
  • setex(k,time,v) 设置带有有效期
  • setnx(k,v) 不存在则插入 不会覆盖
  • append(k,v) 在原始数据后拼接

2.2 键对应的操作

  • keys()返回所有的键
  • exists(k)查看键是否存在
  • type(k)查看键对应值的类型
  • exire(k,time)设置有效期
  • ttl(k)查看剩余时间
  • delete(k)删除键

2.3 列表

列表可以存储数据

  • lpush(k,v) 开头插入
  • rpush(k,v)结尾插入
  • lpop (k) 开头删除
  • rpop(k) 末尾删除
  • lset(k,index,v) 修改指定位置索引
  • linsert(k,after|before,pivot,v) 在指定位置插入索引
  • lrem(k,count,v) 删除指定个数的指定元素
  • ltrim(k,start,stop) 把原始位置切片
  • lreange(key,start,end) 返回对应位置范围所有元素
  • lindex(key,index) 返回对应位置的元素

2.4 集合

集合是无需不重复的

  • sadd(k,*values) 将多个数据插入到集合
  • srem(k,v) 移除指定value
  • spop(key) 随机删除一个
  • srandmember(k,count) 随机取几个 不删除
  • scard(key) 集合元素个数
  • smembers(keys) 返回所有元素
  • sismenber(k,v) value是否在集合中
  • sinter([key,key]) 交集
  • sinterstore (dest,[key,key])将返回的交集存储到集合
  • sunion([key,key]) 返回并集
  • sunionstore(dest,[key,key]) 将返回的并集存储到集合
  • sdiff([key,key]) 返回差集
  • sdiffstore(dest,[key,key]) 将返回的差集存储到集合

3.5 有序集合

通过权重实现有序
每一个值都带有权重

  • zadd(name,{v:score}) 添加带有权重的元素
  • zrem(name,v,v) 从有序集合中移除
  • zcard(name) 个数
  • zcount(name,min,max) 权重在min,max之间元素个数
  • zrange(name,start,stop) 获取指定索引范围元素
  • zrevrange(name,start,stop) 逆序获取索引对应元素
  • zrangebyscore(name,min,max) 获取指定分支对应元素
  • zscore(name,value) 获取value对应的权重

3.6 hash

  • hhset(name,key,value) 添加键值对
  • hget(name,get) 获取键值对
  • hmset(name,{key:value}) 添加多个键值对
  • hmget(name,{key,key}) 获取多个键值对
  • hincrby(name,key,value) 字段的值,增加增量
  • hgetall(name) 所有字段和值
  • hkeys(name) 所有字段
  • hvals(name) 所有字段的值
  • hexists(name,key) 判断字段是否存在
  • hdel(name,key) 删除字段
  • hlen(name,key) 返回字段长度

相关文章:

掌握Redis,看完这篇文章就够了

一,数据库的配置 内存数据库 MySQL与mongodb都是以文件的形式存储在磁盘上的 redis数据在内存中,操作内存的速度远远高于磁盘并且redis数据最终也可以存储在磁盘上 redis的存储结构为简直存储数据库类似于python中的字典的存储方式 redis的服务器与客户…...

烟火识别检测摄像头-火焰烟雾智能检测预警系统---豌豆云

火焰烟雾智能检测预警系统利用现场已有的监控摄像头,火焰烟雾智能检测预警系统对监控区域内的烟雾和火焰进行识别。 这种识别技术不仅准确率高,而且速度快,能够在短时间内对大量的视频数据进行处理和分析。 同时,该系统还能够动…...

js【详解】Promise

为什么需要使用 Promise ? 传统回调函数的代码层层嵌套,形成回调地狱,难以阅读和维护,为了解决回调地狱的问题,诞生了 Promise 什么是 Promise ? Promise 是一种异步编程的解决方案,本身是一个构…...

八股文-持续更新......

文章目录 SpringSpringBootDubboMQMysqlNettyRedis并发ZookeeperMybatisElasticsearchLinux微服务ZookeeperMybatisElasticsearchLinux...

Redis 大key和热key问题及处理

一、说说什么是Redis、及特点? Redis是一个基于内存存储数据运行并支持持久化、使用key/value形式存储的高性能的nosql数据库,适合用于存储频繁访问,数据量较小的场景下。 特点: 支持数据持久化:可以将内存中的数据保…...

SpringBoot中RestTemplate 发送http请求

SpringBoot中RestTemplate 发送http请求 引入fastjson <!--fastjson--> <dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>2.0.47</version> </dependency>创建配置文件 新建c…...

HTTP有什么缺陷,HTTPS是怎么解决的

缺陷 HTTP是明文的&#xff0c;谁都能看得懂&#xff0c;HTTPS是加了TLS/SSL加密的&#xff0c;这样就不容易被拦截和攻击了。 SSL是TLS的前身&#xff0c;他俩都是加密安全协议。前者大部分浏览器都不支持了&#xff0c;后者现在用的多。 对称加密 通信双方握有加密解密算法…...

OWASP Top 10 网络安全10大漏洞——A02:A02:2021-加密机制失效

10大Web应用程序安全风险 2021年top10中有三个新类别、四个类别的命名和范围变化&#xff0c;以及一些合并。 A02&#xff1a;A02:2021-加密机制失效 上升一个位置&#xff0c;当前top2&#xff0c;以前称为敏感数据泄露&#xff0c;是一种状况而不是根本原因。更新后的类别…...

2024-3-11-C++作业

1>试编程 要求&#xff1a; 提示并输入一个字符串&#xff0c;统计该字符中大写、小写字母个数、数字个数、空格个数以及其他字符个数 源代码: #include <iostream>using namespace std;int main() {string s;cout << "请输入字符串&#xff1a;"…...

Spring Boot 实现文件本地以及OSS上传

Spring Boot 实现文件上传 Maven依赖 <dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.15.1</version> </dependency>上传到本地 package yang.controller;import java.…...

如何选择一家优秀的APP开发公司?

在移动应用市场的激烈竞争中&#xff0c;选择一家合适的APP开发公司至关重要。然而&#xff0c;仅仅选择了一家公司并不足以确保项目的成功。本文将为您详细介绍选择好APP开发公司后&#xff0c;还应该注意的关键因素&#xff0c;并引入虎克技术公司的以往合作客户的过程中给出…...

【美团笔试】20240309—春招、暑期实习实习笔试

【美团笔试】20240309—春招实习笔试真题 文章目录 【美团笔试】20240309—春招实习笔试真题1. 小美的MT2. 小美的数组询问3. 小美的平衡矩阵(前缀和)4. 小美的区间删除5. 小美的朋友关系参考1. 小美的MT MT 是美团的缩写,因此小美很喜欢这两个字母。现在小美拿到了一个仅由…...

4-LINUX--文件操作命令

一、文件查看命令 1. cat 1.1 查看文件内容&#xff0c;示例如下&#xff1a; 1.2 合并文件&#xff0c;示例如下&#xff1a; 1.3 往文件中写入数据&#xff0c; Ctrld 是结束输入&#xff0c;示例如下&#xff1a; 2. more 当一个文件的内容超过一个屏幕能显示的行数…...

浏览器缓存 四种缓存分类 两种缓存类型

浏览器缓存 本文主要包含以下内容&#xff1a; 什么是浏览器缓存按照缓存位置分类 Service WorkerMemory CacheDisk CachePush Cache 按照缓存类型分类 强制缓存协商缓存 缓存读取规则浏览器行为 什么是浏览器缓存 在正式开始讲解浏览器缓存之前&#xff0c;我们先来回顾一…...

html5cssjs代码 003 50以内的乘法算式

html5&css&js代码 003 50以内的乘法算式 一、代码二、解释 综合应用代码示例。50以内的乘法算式。 一、代码 <!DOCTYPE html> <html lang"en"> <head><title>20以内的乘法</title><meta charset"UTF-8"><…...

安全先行,合规的内外网文件摆渡要重点关注什么?

内外网隔离在政府、军工部门、科研单位等已成为很常见的网络安全建设措施&#xff0c;内外网隔离是一种网络安全措施&#xff0c;用于保护内部网络免受外部网络的攻击和威胁。 内外网隔离的目的在于限制内外网之间的通信和数据交换&#xff0c;但网络隔离后&#xff0c;仍有数据…...

python:牛客NP9---16进制数字大小

文章目录 一、题意描述输入描述&#xff1a;输出描述&#xff1a; 二、代码1.代码的实现2.读入数据 总结 一、题意 描述 计算的世界&#xff0c;除了二进制与十进制&#xff0c;使用最多的就是十六进制了&#xff0c;现在使用input读入一个十六进制的数字&#xff0c;输出它的…...

【惠友小课堂】你玉米几几呀?关爱青少年骨骼健康,助力“神兽”成长

玉 米 几 几 “你玉米几几呀”这是什么梗&#xff1f;怎么突然火了&#xff1f; 起因是一位来自云南的网友有金记录真实生活&#xff0c;在社交媒体平台上发布了一则视频&#xff0c;视频中字幕“玉米六六”实际上是对“一米六六”身高的一种谐音替换&#xff0c;这种创意表…...

【办公类-21-09】三级育婴师 视频转文字docx(等线小五单倍行距),批量改成“宋体小四、1.5倍行距、蓝色字体”

作品展示&#xff1a; 背景需求&#xff1a; 一、视频处理 1、育婴师培训的现场视频 2、下载视频&#xff0c;将视频换成考题名称 二、音频 视频用格式工厂转成MP3音频 3、转文字doc 把音频放入“网易云见外工作台”转换为“文字" 等待5分钟&#xff0c;音频文字会被写…...

Unity DropDown 组件 详解

Unity版本 2022.3.13f1 Dropdown下拉菜单可以快速创建大量选项 一、 Dropwon属性详解 属性&#xff1a;功能&#xff1a;Interactable此组件是否接受输入&#xff1f;请参阅 Interactable。Transition确定控件以何种方式对用户操作进行可视化响应的属性。请参阅过渡选项。Nav…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

PL0语法,分析器实现!

简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

css3笔记 (1) 自用

outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size&#xff1a;0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格&#xff…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...

Vue ③-生命周期 || 脚手架

生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09; 什么时候可以开始操作dom&#xff1f;&#xff08;至少dom得渲染出来&#xff09; Vue生命周期&#xff1a; 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...