摘要:
年轻代: 老年代 Serial 单线程的复制算法 Serial Old pawNew 是Serial的多线程版本 CMS (最大降低了,单次垃圾的收集时间) Parallel Scavenge 关注的是吞吐量 Parallel Old 之前的内存结构: G1 的内存结构:每一个region 是 1- 阅读全文
摘要:
主从复制的面试点: 1. 主从复制核心原理: 全量复制: 1)主节点通过bgsave 命令fork子进程进行RDB持久化,该过程非常消耗资源 2)主节点通过网络将RDB文件发送给从节点,对主从节点的带宽带来很大消耗 3)从节点清空老数据,载入新RDB数据的过程是阻塞的,无法响应客户端的命令; 增量复 阅读全文
摘要:
1. Redis到底是单线程还是多线程? Redis6.0版本之前的单线程指的是 网络I/O和键值对读写是由一个线程完成的。 Redis6.0引入的多线程指的是网络请求过程采用了多线程;而键值对读写命令仍然是单线程处理的,Redis依然是并发安全的。 即数据操作模块是单线程的,其它持久化、集群数据同 阅读全文
摘要:
redis分布式锁的发展过程。 单机情况下,可以使用synchronized(obj),来保证同步代码块。 代码如下: 其原理是:每个Java对象都可以关联一个Monitor对象,如果使用synchronized给对象上锁(重量级锁)之后,该对象头Mark World中就被设置指向Monitor对象 阅读全文