网友1
1.自我介绍
2.项目中的问题
3.Java类加载器有哪些
4.Java反射机制及应用
5.Synchronized底层实现,4种锁
6.Full GC,Minor GC
7.redis主从复制
8.thrift RPC原理
9.cookie session区别
10.如果登陆了如何其他服务器知道
11.SSO原理,应用场景
12.有什么问题问我吗?
网友2
阿里一面(新零售)一小时左右
1.自我介绍
2.学到数据结构,常用的有哪些,
3.数组和链表的差别,进行频繁插入和删除用哪个
4.如何进行查找,二分查找,还有其他的吗(hash,b树,当时没想起来,之后又补充的)
5.树有哪些树,说下B树的实现原理(如何分裂节点
7.栈和堆的区别
8.给了千万级数据,怎么进行查找(答:hash,多级hash,类似java的HashMap
9.说到HashMap,说下在java中的实现原理,线程安全吗,线程安全的有什么(hashtable,concurrenthashmap)
10.list都有哪些,ArrayList和LinkedList的区别
11.java的这些内存都是怎么分配的,jvm模型
12.类加载,双亲委托加载
13.java的 == 和equals方法的区别。
14.用的java版本1.8,和1.7有什么区别(不知道。。说了concurrenthashmap的区别,他就让具体说一下
15.都有那些琐,说两个synchronized和 ReentrantLock,问怎么实现的,答得不好
16.能介绍你一个你的项目吗,问答网站项目 blabla
17.因为你这是基于BS模型,服务器是啥(tomcat)它在项目中起到的作用(监听端口,接受请求)
18.用过其他的服务器吗,tomcat底层怎么实现的!这个问题没听说过。。
19.http请求,就说到了get和post的区别
20.用到了Redis,都用来储存什么,还了解那些缓存结束,这个没回答好
21.Redis都有哪些数据结构
22.mysql都有哪些引擎,说了innodb和myIsam,问我还知道其他的吗。。根本不知道
23.你用了springboot,为什么要用它(我也不知道其他管理整合ssm的框架了)
阿里二面(已挂,40分钟左右,自己没准备好)
- 先说说文件操作吧,给你一个保存key=value的文件,怎么读取
- 说了普通的读取文件,字符串识别,好久没用Property,之后给提示了
- 给你一个int类型的值,怎么转化为String
- 项目中的异步队列怎么实现的,然后问到了处理消息失败怎么办,没考虑全面
- 线程池相关(答的不好)
- HashMap的实现原理,问到扩容,可以是1.5倍吗
- ConcurrentHashMap的实现原理,1.7和1.8的区别
- 为什么转行,在学习过程中遇到的最大的困难是什么?
- 有遇到过OOM吗,怎么解决的,具体说下JVM怎么造成OOM的
- linux查看一个文件末尾几行的命令(tail)
- 怎么查看含有某个关键字的几行(grep),具体怎么写命令
- 给你一个文件里面有好几列,怎么用命令统计某一列的和(不会。。)
- 有什么问题问我
网友3
作者:牛客9682126号
链接:https://www.nowcoder.com/discuss/223053
来源:牛客网
【干货】特别的分享一个很简单的面试技巧,就是把面试当做一次交流或者把你当做老师来给面试官讲课,这样的话你就会想着说怎么才能讲的更清楚,有哪些注意点要着重讲的?这么来讲,思路非常清晰明了,是加分项
第一轮(简历面)
问博客
问项目
网络七层模型和五层模型
三次握手和四次挥手
为什么是三次握手和四次挥手?
ArrayList和LinkedList的区别
hashmap如何解决hash冲突
ConcurrentHashMap
一致性Hash
JVM内存模型
类加载机制(讲了差不多10分钟,讲的比较详细)
GC过程(讲了10分钟,讲的比较深入)
Spring和redis源码(直接说我没看过,不过没关系,其他方面来补。面试不是说你每个问题都答得出来,而是你答的深入有靓点,这样才能让面试官信任你说你在某些方面非常有自己的造诣和见解。面试官当场说让我准备下一轮,并且根据其他面试官的信息,这一轮我的评分还是挺不错的哦,所以大家真的不要认为每道题都要答得出来。)
熔断原理
手撕写代码(leetcode原题,具体忘了)
比较基础的题目,如果想得到高分的话,不是能够回答出问题就足够了,而是能够深入到原理和底层去回答,这样才能突出你的个人优势。在面试中,有自己的个人见解绝对是最加分的一点!总共面了40分钟。
第二轮
项目
会根据项目引申出一些问题,让你来想如何解决问题
平时和同事的冲突和矛盾如何解决(相处矛盾和技术矛盾都问)
JVM调优(本人的靓点,讲了15-20分钟)
TCP和UDP
高考成绩,英语四六级
最后还给面试官讲了一点人生哲学,这一点也很加分,面试官估计是被我打动了
给你一个5L和6L的杯子,如何得到3L水(逻辑题)
差不多就这些问题吧,项目聊了很久,一定要认真准备项目。项目很差或者答不出来你简历写的内容,这一轮必挂。非常重要的一点,没有把握的东西一定不要写进简历里去(比如说分布式、高并发之类的,如果你写进了简历,面试绝对有高难度的连环炮攻击,没有把握的东西一定不要写进简历,没有把握的东西一定不要写进简历,没有把握的东西一定不要写进简历!!!!本人这块比较有心得和自己的见解,因此毫不犹豫地写进简历)。面试官的连环炮攻击扛不住,这一轮估计就GG了。总共面了1小时20分钟。
第三轮
项目
为什么要用这些技术
引入这些技术是为了解决什么问题以及带来了什么问题
如何查看是否为timewait状态?
进程和线程
进程和线程间通信
为什么不用zk做注册中心?Dubbo和springcloud的区别?(因为本人学的是springcloud系,所以真的对dubbo很不熟悉,面试官怼了几个dubbo相关的问题,我也只答出来一两个点,不过没关系,确实自己没有深入了解过,直接跟面试官坦白说自己没有学过,然后展示自己的优势。虽然这一两个问题回答的不是很好,但是其他方面我很有自己的见解和靓点,所以就得到了很高的评价,比如说基础扎实,项目经验不错,带过团队等等)
限时、熔断、隔离的设计
设计一个MQ(还要求能控制超时)
算法:几亿用户,需要根据淘宝的淘气值对用户进行排名
第三轮总体来说偏难,最重要的一面,也是最容易挂的一面。这一轮只能靠平时的积累了,非常考验内功的一轮,所以不要有侥幸心理,平时多学习才能真正扎实自己的基本功!总共时长1个多小时。
第四轮(HR面试)
HR常规问题,真实回答就好了。
其他
本人没有交叉面,不知道具体什么情况。几轮面试下来,唯一的遗憾就是没能给面试官讲源码,他们好像不太感冒,所以就没问太多了。第三轮准备主动出击讲源码的时候,面试官一直不给我讲,没办法。。。可能他相信我读过源码了吧,想重点问其他问题。
我面试流程特别快,8/4号开始面试,8/13号结束。总共9天,其中有4天是周末,5个工作日就完成面试了。阿里的效率还是挺高的。
网友4
作者:lollipop��
链接:https://www.nowcoder.com/discuss/224321?type=2&order=0&pos=5&page=1
来源:牛客网
- 自我介绍
- 介绍自己的项目
- 项目难点,怎么解决的(2333不会说,就说自己实习的一些小问题)
- Java里的集合类型,说了ArrayList、LinkedList、HashMap的底层
- 介绍自己那个电商项目,啥都没多问2333
- String和StringBuffer的区别
- UDP和TCP的区别,以及和Http的区别
- 对Spring AOP的理解
- 对Spring Cloud的理解
- 算法题:一个小球从100米高空掉下来,每次弹起之前一半长度,求第10次落地时经过的距离
- 算法题:最长不重复子串(2333)
- 写个SQL,表中有班级字段、分数字段,查询出班级和班级的平均分数。
网友5
作者:reway
链接:https://www.nowcoder.com/discuss/218865?type=2&order=0&pos=7&page=1
来源:牛客网
1. 问项目
2. 问算法,堆排序,冒泡排序(突然不会算法了)
3. 实践题,100 个商品 6 个仓库,怎么分配!(选一个合适的算法,尴尬呀,100/6 我居然算出 13,失误失误)
4. OOM 异常
5. 你的 Mysql 用来做什么
6. Mysql 索引
7. zookeeper 架构
8. zookeeper 原理
网友6
作者:金鹏201903071839583
链接:https://www.nowcoder.com/discuss/223721?type=2&order=0&pos=8&page=1
来源:牛客网
1.讲实习过程中做的项目(引出了rpc调用网络异常或超时怎么处理,引出了MQ,之后设计一个消息中间件,在面试官的各种引导下说了出来)
2.springboot ioc 两个依赖注入注解的区别(这个不知道!)
3.讲了一下大创项目,涉及到爬虫,问了怎么解决循环爬取的,用redis存已经爬取过的url,说了ES(只是用过没有深入了解过)
4.nginx项目中主要解决问题,问了反向代理和正向代理,根据我的项目说了一下分布式的项目,问了一下负载均衡策略。竟然问到了jsp(懵逼)
5.问了jsonp为什么用,又说了node.js,说到了http协议,常见的状态码,又问到了restful规范,问到了get post put等,session和cookie 的区别,分布式的单点登录
6.git的使用,怎么避免代码冲突,怎么回退代码,问我有多少种回退机制(不太记得了)
7.Java(终于问到Java了)gc大致讲了一下,老年代,年轻带等等,问了oom内存泄漏(什么情况下出现OOM)提到Java全局的缓存怎么处理防止OOM当时卡了一下�懵逼了,然后说到LRU经典的淘汰策略等等!
8.设计模式有了解么(大致说了几个)
9.for循环能删除list元素么?
10.一个算法算两个用户购买商品的轨迹,计算轨迹的相似度(基本属于傻瓜式回答)
11.你有什么想问我的吗?
总体感觉很好,面试谈很会引导希望能有二面机会吧�
网友7
作者:苹果味的旺仔
链接:https://www.nowcoder.com/discuss/224078?type=2&order=0&pos=9&page=1
来源:牛客网
昨天刚吃完饭正在看动漫,一个电话突然打过来开始面试,面试小哥挺好。
刚开始说了项目,但我的项目比较垃圾,所以没有太说,因为我说到了高并发,所以就开始问我
1.谈一谈高并发,说一下ReentrantLock的应用场景,什么时候用CAS,什么时候用ReentrantLock,你是如何使用高并发的 ,说一下volatile,应用场景是什么
2.数据库的事务,四个隔离级别,不可重复读为什么会产生幻读,怎么解决
3.数据库的索引,说一说B 树,与B树的区别,mysql为什么要用B 树,能不能用红黑树
4.说一下索引优化,如何确认这个索引合不合适
5.说一下Spring的AOP实现原理,他的应用场景,还有没有其他框架用到AOP
6.你都知道哪些设计模式,说一说工厂模式,应用场景,你的项目中有没有用到,怎么用的
7.接口和抽象类的区别,为什么要有抽象类
8.equals与hashCode的区别
9.什么时候用加了锁的HashMap,什么时候用currentHashMap
10.currentHashMap的实现
11.HashMap如何解决hash冲突
12.你了解那些排序算法,他们的时间复杂度和空间复杂度是多少
13.说一下GC的过程,收集算法,垃圾收集器
14.如何查看垃圾收集的状态
15.说一下JDK的内存分布,如何调整新生代和老年代的比例
16.JVM调优
17.Linux的软连接与硬链接
总体面了一个小时,感觉问的都是挺基础的,但我答的实在不好,而且他问了特别多的应用场景,可以看出阿里是很注重实践的。我问了面试官我这次面试有什么不足,他告诉我偏理论知识,实践不足,应该多参加一点商业项目,注重实践。果然我还是太垃圾了。
网友8
作者:苹果味的旺仔
链接:https://www.nowcoder.com/discuss/224078?type=2&order=0&pos=9&page=1
来源:牛客网
昨天刚吃完饭正在看动漫,一个电话突然打过来开始面试,面试小哥挺好。
刚开始说了项目,但我的项目比较垃圾,所以没有太说,因为我说到了高并发,所以就开始问我
1.谈一谈高并发,说一下ReentrantLock的应用场景,什么时候用CAS,什么时候用ReentrantLock,你是如何使用高并发的 ,说一下volatile,应用场景是什么
2.数据库的事务,四个隔离级别,不可重复读为什么会产生幻读,怎么解决
3.数据库的索引,说一说B 树,与B树的区别,mysql为什么要用B 树,能不能用红黑树
4.说一下索引优化,如何确认这个索引合不合适
5.说一下Spring的AOP实现原理,他的应用场景,还有没有其他框架用到AOP
6.你都知道哪些设计模式,说一说工厂模式,应用场景,你的项目中有没有用到,怎么用的
7.接口和抽象类的区别,为什么要有抽象类
8.equals与hashCode的区别
9.什么时候用加了锁的HashMap,什么时候用currentHashMap
10.currentHashMap的实现
11.HashMap如何解决hash冲突
12.你了解那些排序算法,他们的时间复杂度和空间复杂度是多少
13.说一下GC的过程,收集算法,垃圾收集器
14.如何查看垃圾收集的状态
15.说一下JDK的内存分布,如何调整新生代和老年代的比例
16.JVM调优
17.Linux的软连接与硬链接
总体面了一个小时,感觉问的都是挺基础的,但我答的实在不好,而且他问了特别多的应用场景,可以看出阿里是很注重实践的。我问了面试官我这次面试有什么不足,他告诉我偏理论知识,实践不足,应该多参加一点商业项目,注重实践。果然我还是太垃圾了。
网友9
作者:60594707
链接:https://www.nowcoder.com/discuss/223915?type=2&order=0&pos=10&page=1
来源:牛客网
1、项目中的hadoop是用来干嘛的
2、flume是用来干嘛的
3、说一下kafka
4、kafka如何保证不重复消费
5、kafka保证顺序消费吗以及为什么
6、说一下hbase
7、hbase和关系型数据库有什么区别?
8、hbase如何获取数据?答,通过rowKey。如何获取rowKey?
9、stringbuffer和stringbuilder的区别
10、stringbuffer如何保证线程安全?
11、synchronized的用法以及有什么劣势
12、synchronized可能造成死锁的场景
13、如何解决死锁?
14、使用lock锁时需要注意事项
15、hashmap、currenthashmap(后者是如何保证线程安全的)
16、说一下volatile
17、说一下threadlocal以及使用时有什么坑
18、b树和b+树的区别,为什么使用b+树,为什么说b+树要矮胖一些(假设内存足够大)
19、说一下数据结构中的图如何存储
20、spring中ioc的作用
21、spring中aop底层原理以及区别
22、如果一个类中的某个方法使用了final关键字,能够对这个类使用cglib代理
23、spring中Bean的生命周期以及aop是哪一阶段执行的?
24、单例模式有几种形式以及区别?
25、考察linux命令,给定一个文件,文件中每一行都由(时间,用户id,url)组成,每一行
表示这个网站被访问了一次,求这个网站访问的人数以及访问的总次数?
(ps:首先,阿里面试官是真的好,有啥疑问尽管问,真的是很耐心的回答。
然后,阿里面试真的看中基础和深度,一问问题不大,二问就扛不住了,三问直接打死啊�)
网友10
作者:大猪蹄子201810161838419
链接:https://www.nowcoder.com/discuss/223865?type=2&order=0&pos=12&page=1
来源:牛客网
自我介绍
1.问了项目,分布式Session相关 怎么实现的 分布式session是为了解决什么样的问题 其他实现方式 禁用cookie怎么办
2.tcp 在哪一层 http在哪一层 详细说一下arp 网络考了多少分。。。
3.Htttp状态码
4.get put post 区别
5.mybatis #与$区别
6.cookie与session区别
7.为什么要三次握手
8.dos攻击怎么回事,怎么解决
9.说说jvm内存模型 垃圾回收机制,详细问了 CMS
10.问了实习期间做了什么 ,跟es相关,问了一些
11.详细讲一下快排,什么时候用快排什么时候用冒泡?
12.hashmap concurrenthashmap hashtable 实现 区别 treemap 实现 ,红黑树相关
13.有什么想问我的
面试官太温柔,arp忘了还给我讲了一遍。。问了成绩排名 还有获奖状况
网友11
作者:来个大厂offer保命!
链接:https://www.nowcoder.com/discuss/223599?type=2&order=0&pos=15&page=1
来源:牛客网
时间:晚上7.43(不得不说这么晚还来面试可真敬业)
总共用时:31min19s
- 上来先介绍了一下是阿里飞猪BU的,然后问我方不方便,赶紧找个安静的地方准备开始
- 常规自我介绍
- 常用的集合类有哪些?说了List,Map,Set,然后举了两个例子
- 你刚才说的List和ArrayList是什么关系?
- ArrayList和LinkedList有什么区别?
- 在项目里有用LinkedList吗?什么时候用到的?
- 介绍一下Map?HashMap?
- 你刚才说的成环的过程能详细说一下嘛?
- HashMap为什么要用红黑树?
- 算法,求两个集合的差集?(思路)
- 你在项目中有自己写过什么数据结构嘛?比如说一个先进先出的队列?
- 开始问项目,秒杀逻辑整个过程说一下
- 打断一下,怎么样限制用户请求呢?
- 你这个锁的逻辑具体怎么实现的?
- 可以怎么样优化呢?
- 我这边问题就这些了,你有什么要问的吗?
完全没有准备,基础还能回答出来一些,项目被鄙视了...haha重在参与,重在参与
网友12
作者:木小果
链接:https://www.nowcoder.com/discuss/223144?type=2&order=0&pos=17&page=0
来源:牛客网
阿里面试经验:
1. 自我介绍
2. 介绍自己的项目,自己主要负责哪块,怎么实现,在项目遇到的最大的问题是什么,怎么解决的
3. struts2和springMVC 的区别
4. springMVC的请求流程,(https://www.cnblogs.com/mlq2017/p/9655832.html)servlet和springmvc的前端控制器的区别(感觉spring还会问,就时框架的知识,最好多了解一点,不要只停留在会用)
5. 对于会话技术,cookie和session,知道多少,应用场景,为什么会这样用,(比如用来存用户信息,为什么要存,查数据库不可以么?)会话技术存在的意义(目的),感觉web开发相关的知识都应该了解,有自己的见解,不要qubei
6. 数据库相关知识点(忘了)
7. 数据结构了解多少,选自己熟悉的一个讲讲自己的理解(你把你锁了解的说出来),(比如说栈,应用场景)(树,二叉树,平衡树知道多少......)
8. 算法了解过么?(比如说简单的排序算法,自己了解过哪些,讲讲)(还有可能会问你各个排序算法之间的区别(比如:选择排序和冒泡排序有什么区别?))......
9. 计算机网络了解么?知道些什么?如果回答不上来,他会问你一个简单的,TCP三次握手.......
10. 你认为你相比于其他人有什么优势进阿里?你对于你进公司之后有什么期待?......
大约就是这些,因为我很多没有答上,所以就没有深入,要想进阿里,不光基础知识要深厚,而且最好有项目辅助,希望大家都可以找到适合自己的工作,加油鸭!!���
网友13
作者:NPC问题
链接:https://www.nowcoder.com/discuss/222684?type=2&order=0&pos=18&page=1
来源:牛客网
一面大概三十多分钟吧问的都是计算机基础Java没怎么问
排序算法,冒泡排序仔细讲一下,快排复杂度
常用的数据结构,怎么防止hash碰撞
网络OSI七层模型,tcp,udp哪一层,有哪些不同
QQ的属于tcp还是udp协议,直播是怎么实现的
数据库三范式,特性(ACID),又仔细问了持久性和隔离性
事务隔离级别,不可重复读的意义,可重复读的意义
实习相关,项目相关,项目里面redis用来干嘛,崩了怎么办,问了一下网站被频繁url访问攻击怎么办
还有一些忘了
闲聊,学习方式,有一些知识经常容易忘怎么办,有哪些优势
有什么想问的
二面57分钟,主要聊Java,项目和linux命令,还有一些无关技术的东西
一个整型怎么转换成字符串型,回答String.valueof(int)和直接在整型后面+空字符串,好像都不是想要的回答
Hashmap深挖
get的时间复杂度,put方法的逻辑,扩容是几倍,为什么,可不可以扩其他
是不是线程安全的,线程安全的是什么
ConcurrentHashMap原理
有没有用过ThreadLocal
Jvm内存模型
垃圾回收算法
有没有遇到过OOM异常,为什么会出现这个异常
选一个最熟悉的项目聊一聊,针对项目问了一些
Redis分布式锁
linux命令,搜索文件内容(grep脑子短路一下子没想起来真的气),对日志做统计什么命令
查看文件最后n行什么命令
最后问了些非技术问题
评价研究过的知识点都会,但是有盲点,建议多读源码,这是最好的学习方式
来源:https://www.cnblogs.com/youngao/p/12016824.html