![](http://upload-images.jianshu.io/upload_images/11633898-940a19c50212fbcc?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
就最近两周找工作的情况来看,市场对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进阶内推交流群937053620**,不管你在地球哪个方位,不管你参加工作几年都欢迎你的入驻!(群内会免费提供一些群主收藏的免费学习书籍资料以及整理好的几百道面试题和答案文档!)
![](https://upload-images.jianshu.io/upload_images/11633898-502930daca368223.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
有疑问加站长微信联系(非本文作者)