03 2023 档案

摘要:问题描述 随着业务发展的需要,原单体单机部署的系统被演化成分布式集群系统后,由于分布式系统多线程、多进程并且分布在不同机器上,这将使原单机部署情况下的并发控制锁策略失效,单纯的Java API并不能提供分布式锁的能力。为了解决这个问题就需要一种跨JVM的互斥机制来控制共享资源的访问,这就是分布式锁要 阅读全文
posted @ 2023-03-02 11:16 SmallPepsi 阅读(16) 评论(0) 推荐(0) 编辑
摘要:问题描述: key对应的数据存在,但在redis中过期,此时若有大量并发请求过来,这些请求发现缓存过期一般都会从后端DB加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把后端DB压垮。 缓存雪崩与缓存击穿的区别在于这里针对很多key缓存,后者则是某一个key 正常访问 缓存失效瞬间 解决方案 缓 阅读全文
posted @ 2023-03-02 10:46 SmallPepsi 阅读(19) 评论(0) 推荐(0) 编辑
摘要:问题描述: 一个key对应的数据存在,但在redis中过期,此时若有大量并发请求过来,这些请求发现缓存过期一般都会从后端DB加载数据并回设到缓存,这个时候大并发的请求可能会瞬间把后端DB压垮。 解决方案 key可能会在某些时间点被超高并发地访问,是一种非常“热点”的数据。这个时候,需要考虑一个问题: 阅读全文
posted @ 2023-03-02 10:41 SmallPepsi 阅读(55) 评论(0) 推荐(0) 编辑
摘要:问题描述 缓存穿透发生的场景一般有两类: 原来数据是存在的,但由于某些原因(误删除、主动清理等)在缓存和数据库层面被删除了,但前端或前置的应用程序依旧保有这些数据; 恶意攻击行为,利用不存在的Key或者恶意尝试导致产生大量不存在的业务数据请求。 解决方案 一个一定不存在缓存及查询不到的数据,由于缓存 阅读全文
posted @ 2023-03-02 10:22 SmallPepsi 阅读(17) 评论(0) 推荐(0) 编辑
摘要:1.1 什么是slots [OK] All nodes agree about slots configuration. >>> Check for open slots... >>> Check slots coverage... [OK] All 16384 slots covered. 一个 阅读全文
posted @ 2023-03-02 10:20 SmallPepsi 阅读(284) 评论(0) 推荐(0) 编辑
摘要:遇到的问题: 容量不够,redis如何进行扩容? 并发写操作, redis如何分摊? 以上问题都可以使用Redis集群解决 含义 Redis 集群实现了对Redis的水平扩容,即启动N个redis节点,将整个数据库分布存储在这N个节点中,每个节点存储总数据的1/N。 Redis 集群通过分区(par 阅读全文
posted @ 2023-03-02 09:40 SmallPepsi 阅读(20) 评论(0) 推荐(0) 编辑
摘要:含义 反客为主的自动版,检测主服务器是否宕机,如果宕机后会立即选择一个主服务器下的从服务器再当选主服务器 操作步骤 1. 配置哨兵,填写内容 自定义的/myredis目录下新建sentinel.conf文件,名字绝不能错 sentinel monitor mymaster 127.0.0.1 637 阅读全文
posted @ 2023-03-02 09:06 SmallPepsi 阅读(8) 评论(0) 推荐(0) 编辑
摘要:当一个master宕机后,后面的slave可以立刻升为master,其后面的slave不用做任何修改。 用 slaveof no one 将从机变为主机。 阅读全文
posted @ 2023-03-02 08:45 SmallPepsi 阅读(14) 评论(0) 推荐(0) 编辑
摘要:1.1.1. 薪火相传 上一个Slave可以是下一个slave的Master,Slave同样可以接收其他 slaves的连接和同步请求,那么该slave作为了链条中下一个的master, 可以有效减轻master的写压力,去中心化降低风险。 用 slaveof <ip><port> 中途变更转向:会 阅读全文
posted @ 2023-03-02 08:43 SmallPepsi 阅读(15) 评论(0) 推荐(0) 编辑
摘要:1.1. 复制原理 l Slave启动成功连接到master后会发送一个sync命令 l Master接到命令启动后台的存盘进程,同时收集所有接收到的用于修改数据集命令, 在后台进程执行完毕之后,master将传送整个数据文件到slave,以完成一次完全同步 l 全量复制:而slave服务在接收到数 阅读全文
posted @ 2023-03-01 16:58 SmallPepsi 阅读(26) 评论(0) 推荐(0) 编辑
摘要:1. Redis_主从复制 1.1. 是什么 主机数据更新后根据配置和策略, 自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 1.2. 能干嘛 1.读写分离,性能扩展 2.容灾快速恢复 1.1. 怎么玩:主从复制 拷贝多个redis.conf文件includ 阅读全文
posted @ 2023-03-01 16:31 SmallPepsi 阅读(11) 评论(0) 推荐(0) 编辑
摘要:1.1 AOF是什么 以日志的形式来记录每个写操作(增量保存),将Redis执行过的所有写指令记录下来(读操作不记录), 只许追加文件但不可以改写文件,redis启动之初会读取该文件重新构建数据,换言之,redis 重启的话就根据日志文件的内容将写指令从前到后执行一次以完成数据的恢复工作 1.1.1 阅读全文
posted @ 2023-03-01 15:43 SmallPepsi 阅读(19) 评论(0) 推荐(0) 编辑
摘要:Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到 一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。 整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能 如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方式要比 阅读全文
posted @ 2023-03-01 15:16 SmallPepsi 阅读(11) 评论(0) 推荐(0) 编辑
摘要:悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。(共享资源每次 阅读全文
posted @ 2023-03-01 14:50 SmallPepsi 阅读(16) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示