![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 50
zhujuntiankong
这个作者很懒,什么都没留下…
展开
-
Redis的主从同步机制
redis主从数据同步可以分为全量同步和部分同步。每个redis启动时都会生成一个随机字符串RID(replication ID ),从节点怎么判断需要同步多少呢?通过偏移量offset来确定。主节点每次有数据写入,都会在offset上加上写入的字节长度,所以从节点通过比较RID和offset就能确定需要同步多少数据。部分同步:1.从节点保存的主节点RID与主节点的RID一致时,从节点非第一次同步,通过offset把这部分需要同步的数据放入缓冲区,然后异步同步到从节点。全量同步:1.当从节点第一原创 2022-02-15 10:54:55 · 1575 阅读 · 0 评论 -
Redis单线程为何这么快
1、redis是纯内存操作2、采用了非阻塞的IO多路复用3、单线程避免了多线程频繁的上下文切换的性能损耗因为内存操作速度非常快,cpu对于多线程之间的上下文切换需要时间,反而影响了性能,还不如单线程来得实在。Redis为何称为是单线程模型?因为redis是基于Reactor模式开发了网络事件处理器和文件事件处理器,它是单线程的,所以redis才叫单线程模型。Redis的单线程模型文件处理器的结构包含:多个socket、IO多路复用程序、文件事件分派器和事件处理器(命令处理器、命令回复处理器、连原创 2022-02-08 10:18:42 · 1726 阅读 · 0 评论 -
redis如何做亿级用户登录日活统计
方案一:使用string(排除)如何用合适的数据类型来存储1亿用户的数据,用普通的字符串来存储肯定不行。经过查看一个最简单的kv(key为aaa,value为1)的内存占用,发现为48byte。假设每个用户每天登陆需要占据1对KV的话,那一亿就是(48*100000000)/1024/1024/1024=4.47G。这还是一天的量。方案二:bitmap1、bitmap介绍在redis 2.2.0版本之后,新增了一个位图数据,其实它不是一种数据结构。实际上它就是一个一个字符串...转载 2021-07-13 14:08:32 · 1160 阅读 · 0 评论