就最近两周找工作的情况来看, 市场对 Java 工程师的需求并没有因为经济发展受阻而大幅减少, 只是市场对 Java 工程师的要求越来越高.
但我们要知道, 寒冬之中, 什么是最珍贵, 就让鄙人告诉你: 人才. 只要有过硬的技术和装备, 在逆风直下的情况下, 咱们也能迎难而上, 打他个戳手不及. 不是 "李云龙" 大哥说:"过狭路相逢勇者胜."
一面
自我介绍
谈一个你觉得你学到最多的项目, 使用了什么技术, 挑战在哪里
Spring 的 bean 的作用域?(比如: singleton,prototype 等)
Spring 的 IoC 实现原理? 没有无参构造函数能实例化吗? 有参构造函数注入?(xml 配置)
通过反射, 谈到了方法区, 然后, 类加载机制?
synchronized 的实现原理? Volatile 能保证原子性吗? 为什么
hashmap 和 concurrenthashmap 的 size 方法怎么实现的
JVM 的调优参数?(-Xmn,-Xms 等具体参数设置)
线程池优点, 参数, 如果我想实现 newSingleThreadPoll, 应该怎么配置, 构造方法传什么参数
MySQL 死锁, 怎么解决, 如果不要求执行顺序, 死锁怎么解决
IoC 和 aop 原理
线程的五态? 转化过程?
TCP 三次握手, 为什么三次握手?
JVM 内存分区?(主存, 工作内存, 堆, 栈....)
讲一下 GC?
为什么要用老年代和新生代?
新生代进入老生代的情况?
新生代的分区?
二面
变着法的问了一大堆线程池的知识 (主要考对应的参数)
java 内存模型
lock 和 synchronized 的区别
reentrantlock 的实现
hashmap 和 concurrenthashmap
B + 树和 B - 树的区别
复合索引
聚集索引和非聚集索引的区别?
数据库索引 主键和唯一索引有什么区别
索引失效条件, 什么时候该建立索引
innDB 和 MyISAM 的区别?
线程安全 (阻塞同步, 非阻塞同步, 无同步)
三面
主要高并发和分布式架构设计
服务器模型以及之间的区别
线程池的设计
线程池如何做负载均衡
如何实现线程调度算法
复合索引是如何实现的?
如何设计单点登录, 单点登录的原理
Redis 缓存和 Memcached 缓存的区别, 以及各自的优劣势
大型高并发网站如何做性能优化: web 性能, 数据库性能, 应用服务 * 实践中如何优化 MySQL:SQL 语句及索引的优化, 数据库表结构的优化, 系统配置的优化, 硬件的优化
分库分表和读写分离如何设计
微服务架构: dubbo 和 springcloud 的区别, 以及各自对应的使用场景.
以上是阿里最新技术三面题目
另: 在这个变化莫测的时代, 大家要与时俱进, 不要在舒适区待太久, 祝大家都能找到满意的工作.
给大家推荐一个 Java 进阶内推交流群 585550789, 不管你在地球哪个方位, 不管你参加工作几年都欢迎你的入驻!(群内会免费提供一些群主收藏的免费学习书籍资料以及整理好的几百道面试题和答案文档!)
来源: http://www.bubuko.com/infodetail-3010042.html