NoSQL

浅谈Redis的几个过期策略

概述 设置过期时间 expire key time(以秒为单位) 这是最常用的方式 setex(String key, int seconds, String value) 字符串独有的方式 除了字符串自己独有设置过期时间的方法外,其他方法都需要依靠exp...

redis执行redis命令的方法教程

Redis 命令 Redis 命令用于在 redis 服务上执行操作。所以我们必须要启动Redis服务程序,也就是redis安装目录下的redis-server.exe,你可以双击执行,也可以打开cmd窗口,将路径定位到Redis安装目录下,通过redis...

redis用list做消息队列的实现示例

生产消息服务 消费消息服务,定时任务 日志 测试 leftPush消息入队,rightPop对应,消息出队。 rightPop(RedisConstant.MQ_LIST, 0L, TimeUnit.SECONDS)阻塞出队,0表示永久阻塞 生产消息服务 ...

redis的bigkey扫描脚本深入介绍

前言 众所周知,redis里面的大key存在是非常危险的一件事情。因为最近的工作转移到中间件相关的工作,因此关注了一下bigkey的扫描方法。首先介绍一下阿里云提供的扫描脚本: 具体可见:https://yq.aliyun.com/articles/117...

redis单线程快的原因和原理

Redis之所以执行速度很快,主要依赖于以下几个原因: (一)纯内存操作,避免大量访问数据库,减少直接读取磁盘数据,redis 将数据储存在内存里面,读写数据的时候都不会受到硬盘 I/O 速度的限制,所以速度快; (二)单线程操作,避免了不必要的上下文切换...

Redis数据结构之链表详解

1 链表和链表节点的结构 1.1 节点结构 节点的结构大概长下边这个样子: 那么,把这些节点就连起来就成了这个样子: 1.2 链表结构 链表自然除了要把这些节点连起来,还得保存一些其他的信息,不然也太简单了,对吧。那么链表的结构大概长下边这个样子: hea...

Redis缓存常用4种策略原理详解

我们都知道,提高系统性能的最简单也最流行的方法之一其实就是使用缓存。我们引入缓存,相当于对数据进行了复制。每当系统数据更新时,保持缓存和数据源(如 MySQL 数据库)同步至关重要,当然,这也取决于系统本身的要求,看系统是否允许一定的数据延迟。 最常见的几...

Redis实现订单自动过期功能的示例代码

前言 用户下单后,规定XX分钟后自动设置为“已过期”,不能再发起支付。项目类似此类”过期”的需求,笔者提供一种使用Redis的解决思路,结合Redis的订阅、发布和键空间通知机制(Keyspace Notifications)进行实...

redis常用命令整理

一、key 相关: (1)redis允许模糊查询 key(keys *)  有3个通配符 *、?、[] (2)randomkey:返回随机key   (3)type key:返回key存储的类型 (4)exists key:判断某个key是否存在...