-
redis常见的加锁命令分别是INCR、SETNX、SET
1 INCR
这种锁的加锁思路是:key不存在,那么key的值会先被初始化为0,然后再执行INCR操作进行加一。然后其它用户在执行INCR操作进行加一时,如果返回
-
RedisDb
Redis服务器默认有16个数据库,一个数据库对应一个RedisDB数据结构。
typedef struct redisDb {
dict *dict;
dict *expires;
dict * blocking_keys;
dict * ready_keys;
dict * watched_keys;
......
}
dict:
-
intset
当set集合存储的是整数时,encoding为intset类型(小整数集合)
typedef struct intset {
int32 encoding;
int32 length;
int contents[];
}
字段描述说明encoding决定整数位宽是16位、32位还是64位枚举表
-
一、Redis的特性
1.1 Redis为什么快?
基于内存操作,操作不需要跟磁盘交互,单次执行很快命令执行是单线程,因为是基于内存操作,单次执行的时间快于线程切换时间,同时通信采用多路复用Re
-
写在前面
在上一篇文章中,我们已经做到了已经创建好6个redis副本了。
具体的详情,可以查看这里:k8s部署redis集群(一)
那么接下来,我们就继续实现redis集群的搭建过程。
一、redis集群搭建
1
-
⛅引言
本博文参考 黑马 程序员B站 Redis课程系列
在点评项目中,有这样的需求,如何实现笔记的好友关注、以及发布笔记后推送消息功能?
使用Redis 的 好友关注、以及发布笔记后推送消息功
-
Redis常规安全模式
Redis 被设计成仅有可信环境下的可信用户才可以访问。这意味着将 Redis 实例直接暴露在网络上或者让不可信用户可以直接访问 Redi s的 tcp 端口或 Unix 套接字,是不安全的。&nbs
-
一、配置文件
Redis的配置文件存放在Redis的安装根目录下
Windows 版本的 Redis 是 Microsoft 的开源部门提供的 Redis. 这个版本的 Redis 适合开发人员学习使用,生产环境中使用 Linux 系统上的 Redis;博主
-
前因后果
之前我们的服务,在上线的时候发现有一些大Key的使用不是很规范,特别是没有设置过期时间,因此导致redis中内存的数据越来越多,目前Redis节点的内存已经快撑不住了。所以根据缓
-
一、安装redis
源码安装:
1.下载源码包:
wget http://download.redis.io/releases/redis-6.0.7.tar.gz
2.解压到指定目录下:
tar xf redis-6.0.7.tar.gz -C /usr/local/
二、编译安装
下载编译安装Redis的依赖,因为Redis是C
-
秒杀业务特点:限时限量,业务系统要处理瞬时高并发请求,Redis是必需品。
秒杀可分成秒杀前、秒杀中和秒杀后三阶段,每个阶段的请求处理需求不同,Redis具体在秒杀场景的哪个环节起到作
-
1 Redis数据结构介绍
Redis是一个key-value的数据库,key一般是String类型,不过value的类型多种多样:
value的数据类型共有8种,前面5中为基本数据类型,后面3种是针对不同的情况指定的特殊数据类型
-
redis保存AtomicInteger对象踩坑
redisTemplate 保存AtomicInteger对象异常:
java.lang.ClassCastException: java.util.concurrent.atomic.AtomicInteger cannot be cast to java.lang.String at org.springframework.data.redis.serializer
-
正文
Redis 没有直接使用 C 语言传统的字符串表示(而是以空字符结尾的字符数组,以下简称 C 字符串),自己构建了一种名为简单动态字符串(simple dynamic string,SDS) 的抽象类型,并将 SDS 用
-
Redis是一个开源的基于内存也可持久化的Key-Value数据库,采用ANSI C语言编写。它拥有丰富的数据结构,拥有事务功能,保证命令的原子性。由于是内存数据库,读写非常高速,可达10w/s的评率,