高频知识点
一、MySQL 索引核心1. 聚簇索引 非聚簇索引聚簇索引主键索引叶子节点存整行所有数据。 查主键直接拿到全部数据无需回表速度最快一张表只有一个。非聚簇索引二级索引叶子节点只存索引字段 主键 ID。 查询流程先查二级索引拿主键 →回表查聚簇索引拿整行数据。覆盖索引查询字段全部在二级索引中不需要回表查询速度极快。二、MVCC 事务隔离级别 锁机制1. MVCC多版本并发控制核心undo 日志版本链 readView作用普通 select 走快照读、不加锁、读写不冲突提升并发。2. 四大隔离级别读未提交能读到未提交数据有脏读读已提交 RC每次查询新 readView解决脏读有不可重复读可重复读 RRInnoDB 默认事务全程复用 readView解决脏读、不可重复读串行化全部加锁无并发性能最低3. 行锁、间隙锁、临键锁行锁记录锁锁住已存在的真实数据行作用防止并发修改同一行数据解决脏写间隙锁 Gap Lock最难懂锁住两条数据中间的空白区间不锁已有数据只锁空位作用禁止插入新数据彻底解决幻读临键锁 行锁 间隙锁MySQL RR 级别默认锁范围锁精准主键查询会降级为行锁三、Limit 深分页问题 索引失效1. 深分页慢原因limit 10000,10MySQL先扫描前 10010 条丢弃前 10000 条偏移量越大越慢。2. 优化方案游标分页id 上页最大 id limit 10最优大日志表用ES 检索大表按月水平分表3. 三大索引失效面试必考索引字段做函数运算 / 隐式类型转换like % xx、% xx% 左右模糊匹配联合索引不遵循最左匹配原则四、HashMap 1.7 1.8 区别1. 底层结构JDK1.7数组 单向链表JDK1.8数组 链表 红黑树2. 插入方式1.7头插法→ 并发扩容环形链表、CPU 死循环1.8尾插法→ 解决死循环但依然线程不安全3. 树化阈值链表长度 ≥8 转红黑树节点 ≤6 退化成链表4. 并发问题两个版本都不安全多线程 put 会数据覆盖、丢失数据并发必须用ConcurrentHashMap五、ArrayList LinkedList 选型ArrayList底层动态数组 优点查询快、遍历快、尾部增删快缺点中间、头部增删需要移位性能差 适用查多改少90% 业务首选LinkedList底层双向链表 优点任意位置增删快缺点无随机访问查询慢、占内存大 适用频繁中间增删场景六、线程池七大参数 线程数配置 拒绝策略1. 七大参数corePoolSize核心线程数常驻不回收maximumPoolSize最大线程数keepAliveTime非核心线程空闲超时unit时间单位workQueue阻塞队列threadFactory线程工厂handler拒绝策略2. 线程数配置CPU 密集型N 核IO 密集型短信、接口调用2N13. 四种拒绝策略AbortPolicy 默认直接抛异常DiscardPolicy默默丢任务不报错DiscardOldestPolicy丢弃队列最久任务执行新任务CallerRunsPolicy调用者线程自己执行短信业务常用不丢消息七、Spring IOC AOP Bean 生命周期1. IOC 控制反转对象创建、依赖管理交给 Spring 容器不再手动 new 作用解耦、方便维护、方便扩展2. AOP 面向切面不修改源码对方法横向增强适用日志、事务、权限、耗时统计、统一拦截3. Bean 生命周期实例化 → 属性填充 → 初始化前置后置 → 可用 → 容器关闭销毁4. 项目三个核心组件作用RestControllerAdvice全局统一异常处理统一返回前端格式CorsFilter解决前后端跨域拦截器 Interceptortoken 校验、登录拦截、黑名单拦截八、Spring 事务传播 事务失效1. 事务传播行为带事务的方法调用另一个带事务方法事务合并 / 新建的规则2. 高频事务失效场景必背本类内部方法调用事务不生效try-catch 捕获异常Spring 感知不到异常不会回滚方法不是 public业务后果批量短信部分成功、部分失败 →数据不一致、脏数据九、Redis 缓存三大问题穿透、击穿、雪崩1. 缓存穿透现象Redis 没有、数据库也没有大量请求打 DB 解决空值缓存 布隆过滤器2. 缓存击穿现象单个热点 Key 过期瞬间流量打满 DB 解决热点 key永不过期 / 随机过期时间 / 互斥锁3. 缓存雪崩现象大量 key 同时过期数据库压力爆炸 解决过期时间加随机偏移量、集群、熔断限流十、接口幂等性短信、活动重复提交三种幂等方案Redis Token 幂等前端接口下单、创建活动前拿 Token提交校验并删除防重复点击数据库唯一索引最终兜底手机号 模板 时间 联合唯一索引杜绝重复入库MQ messageId 幂等异步短信消费前判断是否已消费解决 MQ 重复投递问题项目标准组合前端接口Redis 拦截 数据库兜底 异步短信MQ 幂等 数据库兜底十一、项目整套优化总结我在短信营销项目中MySQL 层面合理设计联合索引深分页用游标分页大表结合 ES 检索并发层面IO 密集型线程池配置 2N1搭配安全拒绝策略缓存层面解决穿透、击穿、雪崩保证缓存高可用数据安全三层幂等防止重复发短信、重复建活动事务层面规避事务失效问题保证批量数据一致性知识点一页极简背诵口诀一、MySQL 索引聚簇存全行二级存主键查询覆盖不回表 字段运算模糊查最左断掉索引瞎 深分页弃偏移游标分页、分表加 ES。二、MVCC 与锁MVCC 多版本快照不加锁 行锁改现有间隙锁空位临键合一防幻读。三、HashMap七数组链表头插死循环八链表红黑尾插稳 八树六退化二者皆非线程安并发用 ConcurrentHashMap。 数组查得快链表擅增删。四、线程池七参要记牢IO 二 N 加一 默认抛异常短信选调用执行策略不丢任务。五、Spring 核心IOC 容器管对象解耦AOP 切面横增强 Bean实例、赋值、初始化、销毁 全局异常统一返回过滤器解跨域拦截器校验令牌。六、Spring 事务同类调用、捕获异常、非 public事务必失效 传播看调用共用或新开事务失败批量短信脏数据。七、缓存三大坑穿透空值布隆挡击穿热点永不过期雪崩过期加随机。八、幂等三套方案前端 Redis 令牌拦重复数据库唯一索引兜底MQ 用消息 ID 防重消费。

相关新闻

5分钟掌握Blender3mfFormat插件:3D打印爱好者的终极解决方案

5分钟掌握Blender3mfFormat插件:3D打印爱好者的终极解决方案

5分钟掌握Blender3mfFormat插件:3D打印爱好者的终极解决方案 【免费下载链接】Blender3mfFormat Blender add-on to import/export 3MF files 项目地址: https://gitcode.com/gh_mirrors/bl/Blender3mfFormat 还在为Blender无法直接处理3D打印格式而烦恼吗&a…

2026/8/1 8:59:21 阅读更多 →
TS文件格式深度解析:从传输流原理到FFmpeg解封装实战

TS文件格式深度解析:从传输流原理到FFmpeg解封装实战

1. TS文件格式:不只是“视频文件”那么简单提到TS文件,很多朋友的第一反应可能是“一种视频格式”。这个认知对,但也不全对。在流媒体和广电领域,TS(Transport Stream,传输流)文件远不止一个简单…

2026/8/1 8:59:21 阅读更多 →
Maya核心四要素:移动、父子关系、轴心点与分组深度解析

Maya核心四要素:移动、父子关系、轴心点与分组深度解析

1. 项目概述:Maya基础操作的核心四要素 在三维动画与建模的世界里,Maya无疑是一座绕不开的高峰。无论是影视特效、游戏角色,还是工业设计,其强大的功能体系都建立在一些看似基础,实则至关重要的操作概念之上。今天&…

2026/8/1 8:59:21 阅读更多 →

最新新闻

SPT-AKI Profile Editor:终极逃离塔科夫离线版存档编辑器完整指南

SPT-AKI Profile Editor:终极逃离塔科夫离线版存档编辑器完整指南

SPT-AKI Profile Editor:终极逃离塔科夫离线版存档编辑器完整指南 【免费下载链接】SPT-AKI-Profile-Editor Программа для редактирования профиля игрока на сервере SPT-AKI 项目地址: https://gitcode.com/g…

2026/8/1 16:36:22 阅读更多 →
Nginx核心进阶:彻底搞懂server_name + location双层匹配

Nginx核心进阶:彻底搞懂server_name + location双层匹配

一、前言:我之前的错误认知(90%新手都踩的坑) 在本次配置Apollo反向代理之前,我对Nginx的认知一直停留在单层路由思维,也是绝大多数新手的通病:错误认知:Nginx的 server_name 必须是Nginx服务器…

2026/8/1 16:36:22 阅读更多 →
企业级本地AI部署:llama-cpp-python架构深度解析与实战指南

企业级本地AI部署:llama-cpp-python架构深度解析与实战指南

企业级本地AI部署:llama-cpp-python架构深度解析与实战指南 【免费下载链接】llama-cpp-python Python bindings for llama.cpp 项目地址: https://gitcode.com/gh_mirrors/ll/llama-cpp-python llama-cpp-python作为llama.cpp的Python绑定库,为开…

2026/8/1 16:36:22 阅读更多 →
NestJS简明教程——快速配置

NestJS简明教程——快速配置

快速配置记录 NestJS 项目的初始化、依赖注入、控制器、DTO、数据校验与 API 文档配置。初始化项目 nest new first-app -g -s生成项目架构图 使用 madge 分析模块依赖并生成架构图。 安装 npm install -g madge生成图片 madge --image graph.svg ./src/main.ts依赖注入 依赖关…

2026/8/1 16:36:22 阅读更多 →
React中如何为非受控组件设置默认值?:深入解析与实战指南

React中如何为非受控组件设置默认值?:深入解析与实战指南

一、React中如何为非受控组件设置默认值?:概念与场景 1.1 什么是非受控组件 在React中,表单元素的处理方式分为两种:受控组件与非受控组件。受控组件的值由React的state控制,每次输入都会触发onChange并更新state;而非受控组件的值由DOM自身管理,React通过ref来读取…

2026/8/1 16:36:22 阅读更多 →
ASP.NET MVC HTML帮助器详解与实战技巧

ASP.NET MVC HTML帮助器详解与实战技巧

1. MVC HTML 帮助器入门指南 在ASP.NET MVC开发中,HTML帮助器(HTML Helper)是我们每天都要打交道的工具。这些看似简单的方法背后,实际上封装了大量重复性的HTML生成工作。记得我刚接触MVC时,看到 Html.TextBoxFor() …

2026/8/1 16:35:21 阅读更多 →

日新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/8/1 13:02:46 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/8/1 5:19:34 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/8/1 10:33:33 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →