C++选手硬着头皮投了Java岗,奇怪的是还过筛了,然后就被拷打了。自我介绍为什么考虑跨专业?面试官说他们是做 Java 的,但是看我并没有相关的经历,问我投递的时候方向是自己选的吗?(这个时候大概知道是寄了)项目介绍select 语句的查询过程中是否有优化的规则?(扯了 MySQL 的基于规则的优化)火山模型,优点缺点等(这里踩坑了,还提了一嘴物化模型,然后扯了一下)2 核 4G 电脑,在火山模型大概能承载的数据计算量或内存的计算量大概是多少?(不会)字符类型和数字类型在内存中占用是多少(不知道为啥问这个?)为什么需要做缓冲池,如果不做缓冲池的话缺点是什么?是否有做过实际的测试,缓冲池的命中率有多少?(无,根本没这部分内容)磁盘的扫描算法(不会,说了顺序扫描、电梯算法)追问:电梯算法具体说一下(这里开始瞎扯,被面试官拷打)读写锁是怎么用的?它的实现原理是什么?(没了解过,不会)B+ 树和 B 树区别什么数据库适合用 B+ 树作为索引、什么数据库采用 B 树作为索引问第二个项目的项目收获(这块的话,没答好,应该多说一些拓展的)进程间通信如何实现的(7 种都答了,感觉是可以介绍一下每种方式的一个优缺点)总线模型是否了解?(不会)进程和线程之间的区别(答的一般,有些忘记了)一个进程有 10 个线程,每个线程会每 1s 会随机睡眠 0.5s - 1s,这个时候在 CPU 当中的一个运行过程是什么样子的?(有点懵)CPU 时间片运行的计算量和上下文切换的瓶颈大概是在哪里?(不会)然后举个例子:10 个线程执行 100 个任务,和 100 个线程执行 100 个任务,哪个效率高?或者说是什么情况下用 10 个线程效率高,什么情况用 100 个线程效率高?(IO 密集型和 CPU 密集型)栈、队列、二叉树的实现过程,它们的使用场景(简历上写的,突然这么一问,答的不太行)介绍一下红黑树,以及查找过程(上面说二叉树应用场景提了一下,又踩坑了)红黑树插入一个数据,旋转逻辑是什么?(直接说不会)MySQL 如何对数据进行一个恢复的?脏读和幻读MySQL 存储引擎有哪些? InnoDB 和 MyISAM 对事务的支持?数据的范式(答了三大范式)大部分场景不遵循范式,如何考虑的?(不太会了)范式可能更多的是对主键、唯一索引以及外键进行一个约束,什么情况下需要这些约束,什么情况下不需要?(跪了,不会)问了个人情况的一些情况,无手撕算法,估计是觉得我技术能力不够复盘了一下,这个面试官经验很丰富,数据库一些实际场景基本上没接触过,然后还问了很偏门的磁盘调度算法、总线、读写锁的原理,就是在回答的过程当中提到的一些技术内容,尽量不要给自己挖坑,面试官会一直细问。现在看了挂了也很正常,面试官问了一些实际的性能测试相关内容,以及一些技术的业界实现,答的都不太好。
点赞 9
评论 3
全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务