
Redis
文章平均质量分 63
可爱的小小小狼
精读各种经典书籍,喜欢总结读书笔记。
展开
-
redis的发布与订阅
不做持久化不是异步不能保证可靠性。原创 2024-07-12 17:45:35 · 355 阅读 · 0 评论 -
Redis的哨兵和集群实现高可用
1个主服务器2-3个从服务器3-5个哨兵。原创 2024-07-12 17:31:43 · 3308 阅读 · 0 评论 -
Redis的主从复制
slaveeof 主Redis服务器ip 端口此后slave只能读不能写了,并且slave的数据和master的相同。只能写master。此时主从服务器之间会存在不一致的情况。原创 2024-07-12 12:22:32 · 394 阅读 · 0 评论 -
Redis事件和整体框架
Redis服务器是事件驱动程序,主要处理两类:文件事件时间事件。原创 2024-07-08 08:43:42 · 423 阅读 · 0 评论 -
Redis数据结构和持久化
set key value(相同的key会覆盖)get keyincr keydecr keysetex key seconds value seconds秒后失效ttl keydel key。原创 2024-07-07 23:35:09 · 715 阅读 · 0 评论 -
redis的跳表
在当前层级上,从最右侧开始,逐个比较节点的值,直到找到一个节点的值大于或等于目标值。插入新节点时,需要在每一层都更新对应的指针,使得新节点能够正确地插入到每一层中。如果当前节点的值等于目标值,则返回该节点,查找结束。重复步骤2和3,直到找到目标节点或者到达跳表的底层。如果当前节点的值大于目标值,则向下移动到下一层级。从跳表的头节点开始。原创 2024-05-13 14:57:16 · 327 阅读 · 0 评论 -
《分布式锁》
多个消费者(或者说多个线程、多个进程、多个服务实例等)需要对单个数据源(或者说共享资源、关键操作等)进行访问和操作,需要确保在同一时间只有一个消费者能够访问数据源,从而避免数据不一致或者操作冲突。原创 2024-05-12 11:38:28 · 880 阅读 · 0 评论 -
唯一ID生成的方法
缺点:当uuid值作为单号(主键)插入时,就不再是mysql的顺序插入(自增id作为主键,在b+树中是顺序插入的,性能很高),会页分裂性能会下降。缺点:当分库分表时候会直接崩溃。在插入库之前无法获得ID。雪花算法利用时间戳,机器id,序列号生成的唯一ID。(2)将消息内容作为雪花算法的附加内容,生成ID。(1)将消息内容和时间戳一起hash。方法一:数据库的自增ID。方法四:利用消息进行编码。原创 2024-05-11 17:43:07 · 542 阅读 · 0 评论 -
redis中的大key问题
设置过期时间:为数据设置TTL(Time To Live),使得旧数据可以自动被清理,防止无限制地增长。数据分页处理:如果应用场景允许,通过分页方式只加载需要的部分数据,而不是一次性加载整个key。客户端缓存:对于读多写少的数据,可以考虑在客户端进行缓存,减少对Redis的访问压力。负载均衡:对于热点数据,考虑采用负载均衡策略,如一致性哈希等,以均衡各节点负载。评估数据模型:重新评估和设计数据模型,使用更适合的数据结构和存储策略。内存优化:优化数据存储格式,例如使用更紧凑的数据结构或者压缩数据。原创 2024-05-11 15:53:07 · 1486 阅读 · 0 评论 -
redis
redis是用C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。原创 2024-05-10 23:59:07 · 654 阅读 · 0 评论 -
少的缓存穿透是缓存击穿,大量的是缓存雪崩
只要缓存失效了,就会出现缓存穿透,然后根据失效缓存数量的多少,划分出缓存击穿和缓存雪崩。只要请求穿过了缓存层,直接打到了数据库,我就把这个现象理解为缓存穿透。原创 2024-05-09 22:29:15 · 342 阅读 · 0 评论 -
Redis设计与实现
每当我们在redis创建一个键值对时,就会创建两个对象,一个键对象(为sds对象),另一个对象类型将会根据存储类型自动选择,值对象可以是字符串对象,列表对象,哈希对象,集合对象,有序集合对象。用户----命令----> 客户端 ------将命令转换成协议格式然后发送-------> 服务器------回复转换为协议格式------>客户端—将回复显示在界面。套接字s1,s2,s3--------------IO多路复用程序---------文件事件分配器--------------事件处理器。原创 2024-02-13 19:41:50 · 765 阅读 · 0 评论