摘要: Redis相关面试题 面试官:什么是缓存穿透 ? 怎么解决 ? 候选人: 嗯~~,我想一下 缓存穿透是指查询一个一定不存在的数据,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到 DB 去查询,可能导致 DB 挂掉。这种情况大概率是遭到了攻击。 解决方案的话,我们通常都会用 阅读全文
posted @ 2023-07-24 22:04 等风来う 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 1. ⾸先CopyOnWriteArrayList内部也是⽤过数组来实现的,在向CopyOnWriteArrayList添加元素时,会复制⼀个新的数组,写操作在新数组上进⾏,读操作在原数组上进⾏ 2. 并且,写操作会加锁,防⽌出现并发写⼊丢失数据的问题 3. 写操作结束之后会把原数组指向新数组 4. 阅读全文
posted @ 2023-07-24 08:25 等风来う 阅读(46) 评论(0) 推荐(0) 编辑
摘要: JDK、JRE、JVM之间的区别 JDK(Java SE Development Kit),Java标准开发包,它提供了编译、运⾏Java程序所需的各种⼯具和资源,包括Java编译器、Java运⾏时环境,以及常⽤的Java类库等 JRE( Java Runtime Environment) ,Jav 阅读全文
posted @ 2023-07-12 21:30 等风来う 阅读(45) 评论(0) 推荐(0) 编辑
摘要: 为什么要看源码: 1、提升技术功底:学习源码里的优秀设计思想,比如一些疑难问题的解决思路,还有一些优秀的设计模式,整体提升自己的技术功底2、深度掌握技术框架:源码看多了,对于一个新技术或框架的掌握速度会有大幅提升,看下框架demo大致就能知道底层的实现,技术框架更新再快也不怕3、快速定位线上问题:遇 阅读全文
posted @ 2023-07-07 13:49 等风来う 阅读(137) 评论(0) 推荐(0) 编辑
摘要: 为什么要使用消息队列(MQ)?可以列举一些MQ的优点吗? 使用消息队列(MQ)有几个主要的优点: 解耦:通过使用消息队列,系统之间可以实现解耦。一个系统产生的数据可以通过消息队列发布,其他系统可以订阅该消息并消费,而无需直接与数据产生系统进行交互。这种解耦方式降低了系统之间的依赖性,减少了代码维护成 阅读全文
posted @ 2023-07-06 09:31 等风来う 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 为什么MySQL索引更适合B+树而不是二叉树、B树 一 数据库为什么使用B+树 与二叉树相比二叉树相比于顺序查找的确减少了查找次数,但是在最坏情况下,二叉树有可能退化为顺序查找。而且就二叉树本身来说,当数据库的数据量特别大时,其层数也将特别大。二叉树的高度一般是log_2^n,B树的高度是log_t 阅读全文
posted @ 2023-06-29 15:32 等风来う 阅读(9) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示