面试篇
文章平均质量分 94
小板继续努力中~
小扳
有一天,小扳手走进了一家五金店。它看到了各种各样的工具,有锤子、钳子、螺丝刀等等。小扳手觉得自己在这里太小了,不起眼,很容易被忽视。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java 面试篇-SSM 框架专题(什么是 AOP?Spring 中事务时如何实现的?事务失效的场景?Spring 中循环引用怎么解决?Springboot 的自动配置原理?Spring 常见注解?)
AOP,即面向切面编程,在 Spring 中用于将那些与业务无关但对多个对象产生影响的公共行为和逻辑抽取出来,实现公共模块复用,降低耦合。常见的应用场景包括公共日志保存和事务处理。原创 2025-02-10 16:16:59 · 7388 阅读 · 69 评论 -
Java 面试篇-MySQL 专题(如何定位慢查询、如何分析 SQL 语句、索引底层数据结构、什么是聚簇索引?什么是非聚簇索引?知道什么是回表查询?什么是覆盖索引?事务的特性、并发事务带来的问题?)
可以在 MySQL 的系统配置文件中开启慢查询日志,并设置 SQL 执行时间超过多少就记录到日志文件中,比如说项目设置的是 2 秒,超过这个时间的 SQL 就会记录在日志文件中,我们就可以在日志文件中找到执行慢的 SQL 语句。在使用索引时,遵循索引创建原则,确保索引字段是查询频繁的,使用复合索引覆盖 SQL 返回值,避免在索引上进行运算或类型转换,以及控制索引数量。非聚簇索引则是数据与索引分开存储,B+ 树的叶子节点保存的是主键值,可以有多个非聚簇索引,通常可以自定义的索引都是非聚簇索引。原创 2025-02-09 11:18:42 · 6882 阅读 · 48 评论 -
Java 面试篇-Redis 专题(Redis 常见的面试专题:缓存击穿、缓存雪崩、缓存穿透、什么是布隆过滤器、什么是延时双删、持久化的方式、Redis 分布式锁、I/O 多路复用等等)
缓存穿透是指查询一个一定不存在的数据,由于存储层查不到数据,因此不写入到缓存中,这将导致这个不存在的数据每次请求都要到 DB 去查询,可能导致 DB 挂掉。这种情况大概率是遭到了攻击。解决方案的话,一般来说有两种:第一种是缓存空对象;第二种是使用布隆过滤器来解决。布隆过滤器主要是用来检索一个元素是否在一个集合中。当时使用的是 Redisson 实现的布隆过滤器。它的底层原理是,先是初始化一个比较大的数组,里面存放的是二进制 0 或 1。原创 2025-02-07 11:20:41 · 8285 阅读 · 70 评论
分享