Java学习学习再学习

阿里AE事业部面试记录(技术面)

2018-08-22  本文已影响0人  cxjhihihi

面试记录:
8月20日,收到阿里巴巴AE事业部的面试电话(一面),(合计一个半小时)主要面试的问题:

1、先做一下自我介绍,介绍一下自己的工作已经项目中经常用到的一些技术
2、hashcode,equals方法的理解,hashcode相同时,equals是否一定相同,如果重写equals方法,你会怎么写?
3、String,StringBuffer,Stringbuilder的区别,string和stringbuffer做字符串拼接时,有什么不同?hashMap和hashTable有什么区别?各自的数据结构分别是怎么样的?
4、说一下你理解的classloader,双亲委派机制是怎么样的?假如现在有两个包,里面有相同的类,包括包名都是一致的,你怎么处理才能实现两个类都被加载?
5、ThreadLocal是怎么理解的,是否在日常工作中有用到过?举例说明?
6、说一下jvm的各个代?他们都是存储了什么?垃圾回收的原理是什么?有哪些垃圾回收的算法?是否有过OOM的错误的定位的处理?是否有过jvm的优化?持久代是否会有内存溢出的情况?
7、是否在日常项目中,用到过分表分库?分表分库有什么好处?如果只分库,不分表会有什么问题?分表分库是如何保证数据的平均分配?分表分库之后,如何进行数据的分页查询?
8、mysql的索引设计遵守什么原则?索引的数据结构是怎么样的?为什么尽量不要新建索引,而是扩展索引?
9、你平时使用redis的场景是什么?如何保证redis和mysql数据的一致性?如何保证redis的数据都是热数据?
10、BIO和NIO有什么区别?NIO跟BIO相比,有哪些多余的损耗?哪些业务场景下比较适合BIO?
11、说一下你常见的HTTPCode?301和302的区别是什么?304是什么?页面缓存是怎么做的?是否了解过CDN服务器的部署,为什么在CDN层面做缓存,而不在应用服务器做缓存?GET和POST有什么区别?从协议的角度说一下,为什么GET的URL是有长度限制的,而POST长度更长?
12、JDK1.8之后有了一定的优化,问一下你觉得在日常开发中,那些改动你使用的比较多?
13、使用的springcloud的注册中心的实现原理是什么?假如没有注册中心你会怎么做呢?springSecurity的权限验证的机制是怎么样的?
14、说一下你在网易这边做的项目,你觉得最有意义的是哪个?为什么?
15、是否了解过网易这边机房的设置,怎么处理容灾的?

8月21日,收到阿里巴巴二面(合计1个小时),主要面试问题:
1、平时有用到过redis和mq的集群吗?他们的集群分别是基于那种机制搭建的?redis master节点宕机之后,子节点是怎么处理的?
2、数据库的集群,假如某一个子库的服务器宕机,那么是怎么处理的?如何保证在执行的业务和数据不丢失呢?
3、linux的epoll机制是怎么样的?
4、了解过设计模式吗?设计模式有什么好处?什么叫高内聚,低耦合?
5、了解过java的多态吗?他有什么好处?他为什么可以低耦合?
6、平时自己做的项目中,最有挑战性的是什么?说一下它的架构?
7、nginx的分发机制是怎么样的?
8、假如我想在一个bean中获取ApplcaitonContext,我怎么处理?
10、hashtable和concurrenthashMap的同步机制有什么不同?是怎么实现的?数据结构是怎么样的?
11、为什么考虑要换一下环境
12、你有什么要问我的吗?

上一篇下一篇

猜你喜欢

热点阅读