![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 84
Skying_
这个作者很懒,什么都没留下…
展开
-
redis源码分析,SDS动态字符串
redis源码分析,SDS动态字符串 SDS [basic redis v6.0],源码路径: src/sds.c, src/sds.h, src/sdsalloc.h redis中的字符串类型为SDS(C dynamic strings)是一个动态类型字符串。 可以无限增长,理论上长度最大2^64 下面是redis中 SDS的结构 struct __attribute__ ((__packed__)) sdshdr32 { uint32_t len; /* buf已用长度 */ uint3原创 2021-04-19 18:51:58 · 195 阅读 · 0 评论 -
redis持久化
redids持久化 原因:redis基于内存,当发生故障(关机,断电,进程异常退出等)后,内存中数据会丢失,需要将数据持久化到硬盘。 目的:为了故障后将数据加载恢复到内存。 方式:redis提供了两种持久化的方式,RDB(快照存储),AOF(Append only file)。其中RDB是默认的持久化方式。 RDB 方式:快照存储,周期性的将数据快照并保存到硬盘 配置:可以在配置文件中配置存储周期 save 900 1 #900秒内至少有1个key被更改就执行快照 save 300 10 #300内原创 2021-06-10 17:07:30 · 102 阅读 · 0 评论 -
redis事务与管道
Redis事务与管道 事务 Redis事务允许在一次单独的步骤中执行一组命令,Reids事务有两个属性: 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。 Redis事务是原子的。原子意味着要么所有的命令都执行,要么都不执行(执行出错也算执行); 事务相关命令如下: MULTI: 开启事务,之后的命令会加入命令队列,命令不会立即执行。 EXEC: 将命令队列中的所有命令顺序执行。执行结束自动关闭事务。 DISCARD: 取原创 2021-06-15 18:16:54 · 589 阅读 · 0 评论 -
redis分布式锁的各种实现方案以及问题点分析
redis分布式锁的各种实现方案以及问题点分析 redis的分布式锁暂时发现如下几种实现: 通过 SETNX, GET, GETSET实现。 通过 SET key value NX EX milliseconds 实现。 Redisson Redlock CAP定理 一致性(Consistency),可用性(Availability), 分区容错性(Partition Tolerance)。 任何一个分布式系统最多同时满足以上两点,所以通常需要牺牲其中一点来最大化满足另两点。 上面几种实现方式各有问题,原创 2021-06-17 11:43:44 · 245 阅读 · 0 评论