【小米】Java开发-面经
主要是基础知识的考察,题目如下:
- Redis高性能如何实现
-
IO多路复用是什么概念
-
单线程 不堵塞 性能还是高效呢 服务只有一个线城 多个请求 效率如何达到的 一个线城如何处理n多个线城
-
zSet是什么数据结构 实现的具体数据结构是什么 跳表 跳表又是什么样的数据结构
-
TreeMap实现原理和数据结构 特点
-
java中有哪些锁
-
synchronized和可重入锁性能上有哪些差异 锁的粒度是什么样的 就是锁的范围有什么差异吗 可重入锁 有个分段的概念 分段锁
- 数据库 update操作是获取的是行级锁还是表级锁 行级锁都是基于索引的,如果一条SQL语句用不到索引是不会使用行级锁的,会使用表级锁。
- 哪些操作会获取表锁 如果是一次的插入操作呢
-
如何显式地对一个行加锁
-
数据库里索引有什么价值,为什么能快速地检索到我们需要的数据?检索的流程逻辑是什么样的?
- 项目中用到ES ES又是什么应用场景 什么时候选择使用ES 而不是使用数据库 并加上索引的形式
祝大家都获得自己想要的 offer