阿里巴巴一面
-
自我介绍这个就不说了,开头必问的
-
说一下 StringBuilder 和 StringBuffer
-
Spring bean 加载,实例化的过程
-
Spring AOP 源码看过吗
-
java 内存模型说一下
-
如果给你一个 map,里面有很多很多对象,那么这个 map 存放在哪
-
了解 GC 算法吗?
-
说一下 CMS 垃圾回收器
-
B+树和 B 树的区别?
-
haspmap 底层讲一讲
-
ConcurrentHashMap 的底层实现?
-
CAS 是硬件实现还是软件实现?
-
volatile 是锁吗?
-
淘宝和京东的区别,你觉得是什么?
项目相关:
-
介绍一下你简历上写的项目?自己主要做了什么?
-
你觉得项目里给你最大的挑战是什么?遇到了什么问题?如何解决的?从中学到了什么?
-
项目的架构图能画一下不?
-
觉得项目有哪些地方可以改进完善?
-
如果我有很多字段都需要建立索引,怎么办?
-
Mysql 的存储引擎,你用的是哪种?
代码面:
-
设计一个多线程打印程序,第 i 个线程只打印 i-1 数字,比如第 1 个线程打印数字 0,第 2 个线程只打印数字 1,依次类推。任意给定一个数字序列,比如 3382019835830,能够使用该程序打印出来。
-
快速找出一个数组中的两个数字,让这两个数字之和等于一个给定的值,为了简化起见,我们假设这个数组中肯定存在至少一组符合要求的解。
阿里巴巴二面
-
又聊了项目
-
你说到你项目里用了 UDP,你为什么不用 TCP
-
那你详细说一下 TCP 和 UDP 的区别
-
数据库用的是什么(MySQL)
-
那你的数据量是多少(几百万)
-
那你这几百万条,做了什么查询优化(索引)
-
怎么建的索引
-
为什么用时间和 id 来做索引?
-
数据库的隔离级别
-
知道什么是主从复制吗?
-
你说一下建立索引的规则
-
JAVA 类加载机制(加载验证准备解析初始化,又说到双亲委派模型)
-
线程池所有参数讲一讲
-
ConcurrentHashMap 的底层实现
-
RPC 用过吗?
-
消息队列呢?
**总结:**前面问了一些基础性的东西,然后就一直往深了问,问的也基本是有关项目的问题,因为之前做的本身就是一个小项目,也并没有什么亮点,二面结束我就回去等通知了,结果也肯定是凉凉了。
汲取教训,突破底层技术
其实每次面试不管成功还是失败,都是一次很好的学习机会,所以一定要认真对待每次面试,从面试中总结经验,在面试中扫盲,然后回家进行查漏补缺。
首先就是在面试结束后梳理自己的知识体系,这份大纲是目前一线大厂主流的技术,也是面试的重点,大家可以对照梳理自己的知识点,用来扫盲最好不过了
梳理完知识点后结合面试所问到的内容,大致可以看出是哪些不足,然后针对这些知识点再一步一步的深度挖掘,从这位读者的面试看出,他应该可以深度学习一下数据库方面的知识,那接下来我也就跟大家主要的分享一下关系型数据库——MySQL 的深度进阶。
小伙伴们有兴趣想了解内容和更多相关学习资料的请点赞收藏+评论转发+关注我,后面会有很多干货。我有一些面试题、架构、设计类资料可以说是程序员面试必备!所有资料都整理到网盘了,需要的话欢迎下载!私信我回复【000】即可免费获取
MySQL 深度进阶
MySQL 基础内容(稍微带过)
-
MySQL 基本介绍
-
MySQL 架构组成
-
MySQL 存储引擎简介
-
MySQL 安全管理
-
MySQL 备份与恢复
MySQL 性能优化
-
影响 MySQLServer 性能的相关因素
-
MySQL 数据库锁定机制
-
MySQL 数据库 Query 的优化
-
MySQL 数据库 Schema 设计的性能优化
-
MySQLServer 性能优化
-
常用存储引擎优化
MySQL 架构设计
-
MySQL 可扩展设计的基本原则
-
可扩展性设计之 MySQLReplication
-
可扩展性设计之数据切分
-
可扩展性设计之 Cache 与 Search 的利用
-
MySQLCluster
-
高可用设计之思路及方案
-
高可用设计之 MySQL 监控
完结
Redis 基于内存,常用作于缓存的一种技术,并且 Redis 存储的方式是以 key-value 的形式。Redis 是如今互联网技术架构中,使用最广泛的缓存,在工作中常常会使用到。Redis 也是中高级后端工程师技术面试中,面试官最喜欢问的问题之一,因此作为 Java 开发者,Redis 是我们必须要掌握的。
Redis 是 NoSQL 数据库领域的佼佼者,如果你需要了解 Redis 是如何实现高并发、海量数据存储的,那么这份腾讯专家手敲《Redis 源码日志笔记》将会是你的最佳选择。