大型互联网公司面试题(阿里巴巴,京东,美团,滴滴)

大型互联网公司面试题:

一、阿里巴巴面试

1. 开发中Java用了比较多的数据结构有哪些?

2、谈谈你对HashMap的理解,底层原理的基本实现,HashMap怎么解决碰撞问题的?这些数据结构中是线程安全的吗?假如你回答HashMap不是线程安全的,接着问你有没有线程安全的map,接下来问了conurren包。

3、对JVM熟不熟悉?简单说说类加载过程,里面执行的哪些操作?问了GC和内存管理,平时在tomect里面有没有进行过相关的配置

4、然后问了http协议,get和post的基本区别,接着tcp/ip协议,三次握手,窗口滑动机制。

5、开发中用了那些数据库?回答mysql,储存引擎有哪些?然后问了我悲观锁和乐观锁问题使用场景、分布式集群实现的原理。

6、然后问了我springmvc和mybatis的工作原理,有没有看过底层源码?

--------------------------------------------------- 割-------------------------------------------------------

二、京东金融面试

1、Dubbo超时重试;Dubbo超时时间设置

2、如何保障请求执行顺序

3、分布式事物与分布式锁(扣款不要出现负数)

4、分布式session设置

5、执行某操作,前50次成功,第51次失败 a全部回滚 b前50次提交第51次抛异常,ab场景分别如何设置Spring(传播性)

6、Zookeeper有哪些用

7、数据库垂直和水平拆分

8、MyBatis如何分页;如何设置缓存;MySQL分页

9、熟悉IO么?与NIO的区别,阻塞与非阻塞的区别

10、分布式session一致性

-------------------------------------------------------割-------------------------------------------------------

三、美团面试

1、最近做的比较熟悉的项目是哪个?画一下项目技术架构图

2、JVM老年代和新生代的比例?

3、线程池的构造类的方法的5个参数的具体意义?

  • ThreadPoolExecutor(intcorePoolSize,intmaximumPoolSize,longkeepAliveTime,TimeUnitunit,BlockingQueueworkQueue)

  • corePoolSize 线程池大小

  • maximumPoolSize 线程池最大线程数

  • keepAliveTime 表示线程没有任务执行时最多保持多久时间会终止

  • unit 时间单位

  • workQueue 任务缓存队列及排队策略

  • Java并发编程 之 线程池核心ThreadPoolExecutor - CSDN博客

4、使用无界阻塞队列会出现什么问题?

5、接口如何处理重复请求?

6、如何保证共享变量修改时的原子性?

7、设计一个对外服务的接口实现类,在1,2,3这三个主机(对应不同IP)上实现负载均衡和顺序轮询机制(考虑并发)

-------------------------------------------------------割-------------------------------------------------------

四、滴滴面试

1、jvm,jre以及jdk三者之间的关系?

2、Dubbo的底层原理,Zookeeper是什么

3、快速排序;广度优先搜索(队列实现)

4、缓存的雪崩以及穿透的理解?

5、synchronized和lock的区别?

6.开发一个大型网站你会考虑哪些问题?

posted @ 2018-09-12 16:32  Alon_逆水行舟  阅读(433)  评论(0)    收藏  举报