草庐IT

Redis-stat

全部标签

Redis设置hash,为不同的field设置不同的过期时间

Redis设置hash,为不同的field设置不同的过期时间一、背景需求二、具体要求三、代码实现一、背景需求最近做了一个小需求,由于系统对接,导致我们的系统在高峰的时候CPU飙升,所以需要在高峰的时候保护系统进程不受影响。而且还需要我们知道当前对接的数据总量,并且可以实时释放,如果释放失败了,还需要定时释放,减少系统卡顿的同时,不能对第三方产生影响。此处肯定有人想到令牌桶算法,或者redission。SpringBoot基于guava集成令牌桶算法:https://blog.csdn.net/qq_38254635/article/details/126398730SpringBoot集成Re

Redis 的五种数据类型以及使用场景

Redis的五种数据类型以及使用场景一、Redis的五种数据类型1.字符串类型a.用途b.常用命令2.哈希类型a.用途b.常用命令3.列表类型a.用途b.常用命令4.集合类型a.用途b.常用命令5.有序集合类型a.用途b.常用命令二、Redis的使用场景1.缓存系统2.计数器3.消息队列4.排行榜系统5.分布式锁一、Redis的五种数据类型1.字符串类型a.用途存储字符串类型数据,包括文本、数字等。b.常用命令SETkeyvalue:设置键值对GETkey:获取指定键的值INCRkey:将键对应的值加1DECRkey:将键对应的值减1示例代码:importredis#连接redisr=redi

Redis漏洞总结--未授权--沙箱绕过--(CNVD-2015-07557)&&(CNVD-2019-21763)&&(CVE-2022-0543)

Redis未授权--沙箱绕过--(CNVD-2015-07557)&&(CNVD-2019-21763)&&(CVE-2022-0543)环境复现采用Vulfocus靶场进行环境复现,官网docker搭建有问题,具体搭建教程参考vulfocus不能同步的解决方法/vulfocus同步失败CNVD-2015-07557未授权访问影响版本Redis漏洞探测使用端口扫描工具等探测到目标主机使用了Redis服务对于Redis服务的未授权访问,首先需要确认Redis未授权是否存在,使用Redis数据库客户端进行连接测试,如何没有密码,即未授权漏洞存在。客户端连接工具AnotherRedisDesktop

【5分钟背八股】redis持久化RDB和AOF?

Redis持久化Redis提供了不同级别的持久化方式:RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储.AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以redis协议追加保存每次写的操作到文件末尾.Redis还能对AOF文件进行后台重写,使得AOF文件的体积不至于过大.如果你只希望你的数据在服务器运行的时候存在,你也可以不使用任何持久化方式.你也可以同时开启两种持久化方式,在这种情况下,当redis重启的时候会优先载入AOF文件来恢复原始的数据,因为在通常情况下AOF文件保存的数据集要比RDB文件保存的数据集要完整.最重要

Redis中Key中为什么要使用{}

一、Redis集群介绍Redis集群是一个提供在多个Redis间节点间共享数据的程序集,Redis集群能够实现key的分片,分片能使key均匀地分布到集群的机器上去,能保证数据的一致性。二、使用Redis集群需要注意的点从Redis单实例切换到twemproxy集群时,有些需要注意的地方。1、不支持的方法:KEYS、MIGRATE、SCAN等2、支持但需特殊处理的方法:MSET、SINTERSTORE、SUNIONSTORE、ZINTERSTORE、ZUNIONSTORE等对于不支持的方法,在使用时需要寻找替代方案。三、Redis集群的数据分片Redis集群没有使用一致性hash,而是引入了哈

SpringBoot集成Lettuce连接Redis方法和案例

首先使用maven在pom.xml添加如下依赖说明:SpringBoot从2.0起默认使用lettuce客户端进行连接。此次使用的版本:springboot:2.6.6,lettuce:6.1.8。org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-data-redis 使用SpringBoot集成Lettuce连接实例Springboot+Lettuce单连方式连接Redis单机/主备/Proxy集群示例。1、在application.properties配置文件

【SpringBoot】| SpringBoot 集成 Redis

目录一:SpringBoot集成Redis 二:对比StringRedisTemplate和RedisTemplate  图书推荐:《MySQL8查询性能优化》一:SpringBoot集成Redis ①Redis是一个NoSQL(notonly)数据库,常作用缓存Cache使用。②Redis是一个中间件、是一个独立的服务器;常用的数据类型:string,hash,set,zset,list③通过Redis客户端可以使用多种语言在程序中,访问Redis数据;java语言中使用的客户端库有Jedis,lettuce, Redisson等。④SpringBoot中使用RedisTemplate(和S

java面试题-Redis相关面试题

Redis相关面试题面试官:什么是缓存穿透?怎么解决?候选人:嗯~~,我想一下缓存穿透是指查询一个一定不存在的数据,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到DB去查询,可能导致DB挂掉。这种情况大概率是遭到了攻击。解决方案的话,我们通常都会用布隆过滤器来解决它面试官:好的,你能介绍一下布隆过滤器吗?候选人:嗯,是这样~布隆过滤器主要是用于检索一个元素是否在一个集合中。我们当时使用的是redisson实现的布隆过滤器。它的底层主要是先去初始化一个比较大数组,里面存放的二进制0或1。在一开始都是0,当一个key来了之后经过3次hash计算,模于数组长度找到数据的下

轻松搞定Docker环境下Redis安装

目录一、docker安装redis 二、准备redis.conf配置文件三、创建本地redis.conf文件,用以映射  四、将原配置好的redis.conf文件内容复制到本地redis.conf 五、挂载配置,启动dockerredis 六、连接redis 七、一些命令补充一、docker安装redis#该处下载的是redis5.0,如果想下载最新可以去掉“:5”,默认下载最新 #也可以到redis官网上去查看自己想要的版本:dockerpullredis:5#查看下载情况dockerimages 二、准备redis.conf配置文件(1)可以现在redis官网下载一个redis配置文件的模

Linux服务器使用Redis作为数据缓存,并用log4j2进行日志记录

前言个人网站使用Vue作为前端,SpringBoot作为后端,MySQL作为数据库,但前端每次请求都会从MySQL数据库中读取数据,而MySQL数据库的数据是存储于服务器磁盘中,所以响应速度有一定影响。之前了解过一点Redis数据库,该数据库数据存储于内存中(也可以持久化于磁盘中),数据读取速度就会比存储于磁盘中的MySQL快很多,故想把Redis数据库应用于该网站项目中。一、安装RedisLinux系统安装Redis比较简单,可以直接通过命令行安装,安装过程比较简单,在此就不赘述,下列出一些常用命令#更新aptsudoaptupdate#安装Redissudoapt-getinstallre