数据库
文章平均质量分 64
Luci_0722
这个作者很懒,什么都没留下…
展开
-
Redis场景题
使用一个 2 核 CPU、4GB 内存、500GB 磁盘的云主机运行 Redis,Redis 数据库的数据量大小差不多是 2GB。当时 Redis主要以修改操作为主,写读比例差不多在 8:2 左右,也就是说,如果有 100 个请求,80 个请求执行的是修改操作。在这个场景下,用 RDB 做持久化有什么风险吗?内存角度:做RDB使用写时复制,而以修改为主,主线程会复制大量内存,大约就是1.8GB额外复制,如果还有额外大数据,内存会超出限制,如果启用了swap机制,读取磁盘数据就会很慢,如果没有开启,Red原创 2023-06-13 21:07:01 · 152 阅读 · 0 评论 -
Redis如何持久化?
但是此时父进程依旧是会有流量写入的,如果父进程操作的是一个已经存在的key,那么这个时候父进程就会真正拷贝这个key对应的内存数据,申请新的内存空间,这样逐渐地,父子进程内存数据开始分离,父子进程逐渐拥有各自独立的内存空间。等重写完成之后,直接替换旧文件即可。问题二:对于任何文件系统都是不推荐并发修改文件的,例如hadoop的租约机制,Redis也是这样,避免重写发生故障,导致文件格式错乱最后aof文件损坏无法使用,所以Redis的做法是同时写两份文件,最后通过修改文件名的方式,保证文件切换的原子性。原创 2023-06-08 14:55:25 · 42 阅读 · 0 评论 -
单线程 Redis 如此之快的 4 个原因
redis单线程如此之快的原因翻译 2023-06-07 14:18:26 · 48 阅读 · 0 评论