redis的一些操作

文章目录

  • 清空当前缓存和所有缓存
  • 配置内存大小,防止内存饱满
  • 设置内存淘汰策略
  • 键过期机制

清空当前缓存和所有缓存

Windows环境下使用命令行进行redis缓存清理

  • redis安装目录下输入cmd
  • redis-cli -p 端口号
  • flushdb 清除当前数据库缓存
  • flushall 清除整个redis所有缓存

在redis安装目录下,右键选择“在终端打开”,如下图:
在这里插入图片描述

(base) PS C:\Program Files\Redis> redis-cli -p 6379
127.0.0.1:6379> flushdb
OK
127.0.0.1:6379> flushall
OK
127.0.0.1:6379>

在这里插入图片描述

配置内存大小,防止内存饱满

1、通过在Redis安装目录下的redis.conf配置文件设置内存大小

maxmemory 4096mb

2、通过cmd

//设置Redis最大占用内存大小为100M
127.0.0.1:6379> config set maxmemory 4096mb
//获取设置的Redis能使用的最大内存大小
127.0.0.1:6379> config get maxmemory

在这里插入图片描述

设置内存淘汰策略

  • noeviction策略:内存空间达到maxmemory时,不会淘汰数据,有新写入时会返回错误。
  • volatile-ttl策略:针对设置了过期时间的键值对,根据过期时间的先后进行修改,越早过期的越先被删除。
  • volatile-random策略:在设置了过期时间的键值对中,进行随机删除。
  • volatile-lru策略:使用LRU算法筛选设置了过期时间的键值对,进行删除。
  • volatile-lfu策略:使用LFU算法筛选设置了过期时间的键值对,进行删除。
  • allkeys-random策略:在所有键值对中随机选择并删除数据。
  • allkeys-lru策略:使用LRU算法在所有数据中进行筛选并删除数据。
  • allkeys-lfu策略:使用LFU算法在所有数据中进行筛选并删除数据。

当使用volatile-lru、volatile-random、volatile-ttl这三种策略时,如果没有key可以被淘汰,则和noeviction一样返回错误
设置方法

127.0.0.1:6379> config set maxmemory-policy allkeys-lru

查看策略

127.0.0.1:6379> config get maxmemory-policy

键过期机制

一个键过期机制——给key设置一个过期时间,一旦超过过期时间,这个key就会被被删除,内存将被回收。

设置键值时,EXPIRE单位是秒,PEXPIRE单位是毫秒
在Redis中,可以使用以下命令来设置键的过期时间:

  1. EXPIRE key ttl:设置键在ttl秒后过期。

例如,要设置一个名为“username”的键在60秒后过期,可以执行以下命令:

EXPIRE username 60

如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

  1. PEXPIRE key milliseconds:设置键在毫秒后过期。

例如,要设置一个名为“email”的键在1000毫秒后过期,可以执行以下命令:

PEXPIRE email 1000

如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

  1. EXPIREAT key timestamp:设置键在某个时间戳(精确到秒)之后过期。

例如,要设置一个名为“password”的键在2023年1月1日0点1分过期,可以执行以下命令:

EXPIREAT password 1672752660

如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

  1. PEXPIREAT key millisecondsTimestamp:设置键在某个时间戳(精确到毫秒)之后过期。

例如,要设置一个名为“access_token”的键在2023年1月1日0点1分10秒后过期,可以执行以下命令:

PEXPIREAT access_token 1672752670000

如果设置成功,将返回1;如果键不存在或者设置失败,将返回0。

需要注意的是,当键已经存在时,才允许设置过期时间。如果键不存在,使用上述命令将返回0。此外,当键过期后,可以使用TTL和PTTL命令来查看该键的剩余存活时间。如果键不存在或者未设置过期时间,将返回-1或-2。
TTL单位是秒,PTTL单位是毫秒

127.0.0.1:6379> TTL KEY
127.0.0.1:6379> PTTL KEY

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

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

相关文章

【Linux】深入理解系统文件操作(1w字超详解)

1.系统下的文件操作: ❓是不是只有C\C有文件操作呢?💡Python、Java、PHP、go也有,他们的文件操作的方法是不一样的啊 1.1对于文件操作的思考: 我们之前就说过了:文件内容属性 针对文件的操作就变成了对…

阿里云云盘IOPS与IO吞吐

1、云盘IOPS 存储类别ESSD云盘SSD云盘性能级别PL3PL2PL1无 最大IOPS计算公式 (存储空间单位:GB) min{180050*存储空间, 1000000, 实例规格最大IOPS}min{180050*存储空间, 100000, 实例规格最大IOPS}min{180050*存储空间, 50000, 实例规格最大…

悄悄上线:CSS @starting-style 新规则

最近 Chrome 117,CSS 又悄悄推出了一个新的的规则,叫做starting-style。从名称上来看,表示定义初始样式。那么,具体是做什么的?有什么用?一起了解一下吧 一、快速了解 starting-style 通常做一个动画效果…

µC/OS-II---中断相关名词

中断相关名词 中断和中断服务程序进入临界区和禁用中断任务的临界区代码和ISR的临界区代码 中断和中断服务程序 中断是指处理器在执行程序的过程中,由硬件或软件触发的一种事件。当中断事件发生时,处理器会立即中断当前的执行流程,保存当前的…

【用unity实现100个游戏之16】Unity中程序化生成的2D地牢5(附项目源码,完结)

文章目录 最终效果前言生成墙壁优化方法一、使用rule tile方法二、使用代码生成墙壁补充最终效果后续参考源码完结最终效果 前言 本期是本项目最后一期,主要是进行墙壁的生成优化和补充一下剩下了的其他内容 生成墙壁优化 方法一、使用rule tile 我这里大概给个rule tile参…

ASM字节码操作类库(打开java语言世界通往字节码世界的大门) | 京东云技术团队

前言:授人以鱼不如授人以渔,应用asm的文章有很多,简单demo的也很多,那么ASM都具备哪些能力呢?如何去学习编写ASM代码呢?什么样的情景需要用到ASM呢?让我们带着这些问题阅读这篇文章吧。 这里由…

abap qm01创建质检通知单相关bapi:IQS4_CREATE_NOTIFICATION

网上查找关于创建质检通知单相关bapi时,基本都是显示BAPI_QUALNOT_CREATE该函数,经查看,该函数缺少QF01缺陷记录的参数,比如检验批,退货数量等字段,同时即使该函数成功执行,生成的通知单也是有问…

搜索记录及使用缓存的设计思路

目录 背景: 思路: 问题 实现 背景: 最近业务写到检索这块的内容,设计到搜索记录的增删操作。考虑到频繁写库操作所以使用缓存技术 redis 和 cacha。 思路: 查询:先查内存查缓存在查询数据库,查询数据库先更新内存…

电脑开机过程中,程序的启动的顺序是怎么样的?

电脑的启动过程涉及多个步骤,程序按照特定的顺序启动。这个过程通常如下: 电源开启: 当你按下电源按钮时,电源供应器(PSU)开始向电脑的各个组件供电。 自检加电(POST): 这是电脑启动过程的第一步。在这个阶段,基本输入输出系统(BIOS)或统一可扩展固件接口(UEFI)执行…

Ubuntu 搭建FTP服务

在Linux中使用的FTP是vsftp,Ubuntu中安装vsftp: apt install vsftpd 配置文件在/etc路径下,会出现两个配置文件: /etc/vsftpd.conf :主配置文件 /etc/ftpusers:指定那些用户不能访问FTP服务器,这里的用…

RunwayGen2上线全新控制功能「运动笔刷」

从8月份开始,我就在各种场合表达过,AI视频现在最痛苦的点,是控制性极差。Gen2的语义理解本来就差,还几乎没有任何可控性,只有那几个镜头控制,剩下全靠roll。但是你roll的,全是白花花的银子啊...…

每日一练:X加上100为完全平方数,再加上168仍然为完全平方数

题目 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 实现方式1 解题思路 设整数为x,根据题意建立方程:   (1) x 100 是一个完全平方数,即存在整数a满…

设计模式-15-Jdk源码中的设计模式

之前我们学习了一些设计模式,今天我们剖析Java JDK 源码中用到的几种常见的设计模式。 1-jdk之工厂模式 在前面讲到工厂模式的时候,大部分工厂类都是以Factory作为后缀来命名,并且工厂类主要负责创建对象这样一件事情。但在实际的项目开发中…

技术分享| gcc版本升级到5.2

一、介绍 GCC(GNU Compiler Collection)是一套广泛使用的开源编译器集合,用于编译多种编程语言,包括C、C、Objective-C、Fortran等。GCC 的不同版本提供了许多新功能、改进和修复,其中包括从 GCC 4.8.5 升级到 GCC 5.…

泛型边界的问题

作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO 联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬 我们花了两篇文章讲述了…

常见树种(贵州省):007青冈

摘要:本专栏树种介绍图片来源于PPBC中国植物图像库(下附网址),本文整理仅做交流学习使用,同时便于查找,如有侵权请联系删除。 图片网址:PPBC中国植物图像库——最大的植物分类图片库 一、青冈 …

AI一点通:卷积神经网络的输出节点大小如何计算?全连接层必要输入大小如何设置

在使用卷积网络(CNN)时,一个步骤是计算经过卷积和池化步骤后的输出大小,以便我们可以将输出连接到一个完全收集的线性层。 以Pytorch中的一维CNN为例, self.conv1 nn.Conv1d(in_channels1, out_channels64, kernel_s…

JAVA sql 查询3

-- 1. 求各个月入职的的员工个数 select date_format(hiredate,%m),count(date_format(hiredate,%m)) from employees group by date_format(hiredate,%m) -- 2. 查询 50 号部门,60 号部门,70 号部门的各个部门的平均工资 SELECT department_id,avg(salary) FROM employees WH…

CPSC发布关于亚马逊含有纽扣电池或硬币电池产品的相关规则标准!UL4200A

2023年9月21日,美国消费品安全委员会(CPSC)在《联邦公报》上发布了纽扣及硬币电池及相关产品的最终规则(DFR)16 CFR 1263,以保护6岁以下儿童免受电池摄入危害。DFR将于2023年10月23日生效,除非消…

数据库:sql查询值为空的数据

在日常的数据处理中,经常会遇到需要查询某个字段值为空的数据的情况。 针对这种情况,我们可以使用SQL语句来查询值为空的数据,以便更好地对数据进行分析和处理。 一、查询NULL值 在SQL中,NULL表示缺少值或未知值。要查询NULL值…