执行一条 select 语句,期间发生了什么?

MySQL执行SELECT语句流程:连接器建立连接并校验权限→查询缓存(8.0已弃用)→解析器词法语法分析→预处理器检查表字段→优化器选最优索引→执行器调用存储引擎读取数据并返回客户端,期间可能使用索引下推减少回表。

进程间有哪些通信方式?

Linux进程间通信方式:匿名/命名管道、消息队列、共享内存、信号量、信号、Socket;线程共享进程资源,用全局变量及信号量实现互斥同步。

为什么要有哨兵?

Redis哨兵机制通过监控、选主、通知三步,实现主节点故障时自动将从节点提升为新主并通知客户端,避免人工介入,保障高可用。

回顾一下类加载过程

文章回顾了Java类加载流程:加载→连接(验证、准备、解析)→初始化,并详解Bootstrap、Ext、App三大内置类加载器及双亲委派模型——先委托父加载器,失败才自己加载,保障核心类唯一与隔离。可重写findClass或loadClass自定义加载器,Tomcat用WebAppClassLoad...

JVM垃圾回收详解

文章系统梳理HotSpot JVM垃圾回收机制:从堆分代、对象存活判定、四种引用类型,到标记-清除、复制、整理、分代算法,再详解Serial、ParNew、Parallel、CMS、G1、ZGC等收集器特点与适用场景,并给出常见面试题解答。

目录