蚂蚁金服面经(3+4)

之前面了阿里中间件的提前批,不过没走流程。同期还面了蚂蚁中间件的两轮面试,被告知不走流程就不能面了,所以也没面完。
后来走了蚂蚁金服财富事业群这边的流程。前几天刚刚面完HR。
正好今天分享一下面经,回馈下牛客,大家可以多交流交流哈。

蚂蚁中间件(面了三次,两次一面,一次二面

蚂蚁金服中间件一号机

一面:
自我介绍

1Java中的多线程了解么,线程池的增长策略和拒绝策略了解么,说一下。
2讲一下线程增加的过程和拒绝策略的执行。
3讲了一下fixthreadpool的增长策略,然后几种拒绝策略。

4高并发情况下,如何使用线程池,用哪个,问了一下线程结束要多久,是否在下一个线程结束前完成(我想的是***threadpool,其实思路错了)。
5表示并发量比较大,所以我说可以考虑并发量是否大于队列长度加上最大线程数量和,如果不超过的话可以是用fixthreadpool。

6并发juc了解么,有哪些线程安全的list。说了个copyonwritelist,想了半天说不出第二个了。尴尬,那就vector把,不是juc里的。
貌似并发包里确实没有其他list啊。
还问了concurrenthashmap1.8的改动。

7HTTP协议了解么,和tcp有什么区别。
8http1.0和2.0的区别。
答了TCP连接复用,加入ssl,以及压缩请求头。
其中哪个更新比较有意义,为什么。我说的是压缩请求头,这样可以优化HTTP服务的性能。

9Java的网络编程,比如NIO和Socket了解么。
说下BIO和NIO的区别把。
我说了BIO的阻塞用法,以及NIO的IO多路复用用法,说了selector,seletedkey,channel等类的使用流程,以及单线程处理连接,多线程处理IO请求的好处。

10说一下NIO的类库或框架
讲了netty,写过服务端和客户端的demo,没有在生产中实践。
1 channelhandler负责请求就绪时的io响应。
2 bytebuf支持零拷贝,通过逻辑buff合并实际buff。
3 eventloop线程组负责实现线程池,任务队列里就是io请求任务,类似线程池调度执行。
4 acceptor接收线程负责接收tcp请求,并且注册任务到队列里。


11倒排索引了解么,我说不了解。
其实就是搜索引擎的基础索引,根据关键字到文档的映射关系建立索引,中文关键字可以使用中文分词,查询时通过关键字来定位索引,并且进行排序后得到文档结果集。
然后面试官说讲一下数据库把,说下sql优化的方式
我说的是MySQL,先讲了一下sql使用索引的优化,然后基于索引说了几条优化方案。

12索引什么时候会失效变成全表扫描
说了联合索引的前缀匹配,跳跃索引,聚合函数,判空和<>这些情况。

13分布式的paxos和raft算法了解么
了解过,但是讲不清楚。
paxos:多个proposer发请提议(每个提议有id+value),acceptor接受最新id的提议并把之前保留的提议返回。当超过半数的accetor返回某个提议时,此时要求value修改为propeser历史上最大值,propeser认为可以接受该提议,于是广播给每个acceptor,acceptor发现该提议和自己保存的一致,于是接受该提议并且learner同步该提议。

raft:raft要求每个节点有一个选主的时间间隔,每过一个时间间隔向master发送心跳包,当心跳失败,该节点重新发起选主,当过半节点响应时则该节点当选主机,广播状态,然后以后继续下一轮选主。

14中间件知道哪些,阿里的dubbo,rocketmq的事务消息,问了TCC回答说这个之前没看明白。
说了mycat实现分表分库,消息队列kafka和rabbitmq等。

15平时看什么书,怎么学习的。还跟我说他们部门3个华科的,校友多多。

16Spring和Springmvc讲一下。讲了Spring的ioc和aop,Springmvc的基本架构,请求流程。

蚂蚁金服中间件二号机


一面:
1 自我介绍
2 讲一下ArrayList和linkedlist的区别,ArrayList的扩容方式,扩容时机。
3 hashmap的实现。
4 NIO了解么,讲一下和BIO的区别,AIO呢。阻塞,非阻塞,异步。具体。
5 你说了解分布式服务,那么你怎么理解分布式服务。
6 你说了解Tomcat的基本原理,了解的是哪一部分,基本架构,connector和container
7 你在项目中怎么用到并发的
8 docker和虚拟机讲一下。
9 有啥想问的

二面:
1 项目
2 说一下Spring源码把,它的架构,流程。
3 Spring的bean如果要在实例化过程中修改其某一个成员变量,应该怎么做呢。不通过构造方法,并且AOP也并不能实现。
4 Tomcat的类加载器了解么,回答不了解只了解Java的类加载器。
5 自定义类加载器怎么实现,其中哪个方法走双亲委派模型,哪个不走,不走的话怎么加载类(实现findclass方法,一般用defineclass加载外部类),如何才能不走双亲委派。(重写loadclass方法)
6 布隆过滤器了解么,讲了ip地址过滤的布隆过滤器实现。
7 听说你项目用过docker,讲一下docker的实现原理,说了虚拟机一般要对内核进行虚拟化,docker则用cgroup和namespace分别进行硬件和命名空间的隔离。
8 项目中遇到的最大挑战。
9 项目中学到最多的东西
10 有什么想问


蚂蚁财富面经(1+2+交叉+HR)

跟这边的部门主管说了一下之前面试的情况,然后他帮忙催了下进度。

一面:
1 亿级ip地址过滤
2 排序算法和适用场景
3 数据库的事务有什么用
4 数据库的悲观锁和乐观锁
5 数据的索引有什么用,怎么实现
6 联合索引的匹配原则
7 数据库万级变成亿级,怎么处理。分库分表,分片规则hash和取余数。使用mycat中间件实现。
8 redis这种nosql和mysql有什么区别,讲了一遍redis
9 Spring了解不,用到了哪些设计模式,说了四个,单例,工厂,***,观察者,模板其实也算。
10 web请求的过程,讲了浏览器到http服务器的过程,再讲了mvc的请求处理过程。
11 你的职业规划
12 没了。

二面:
没有二面,好像说是跳过了一轮,直接技术主管面。

三面:
1 项目中的多线程,为什么用chm,还有什么可以避免并发问题。
2 平时在看什么,写什么博客,我说分布式,关注什么内容,大后端,Hadoop生态。
3 dubbo了解么
4 dubbo的基本架构,几个组件说一下
5 服务生产者和消费者怎么进行rpc调用
6 怎么进行服务注册发现 zk实现具体说说
7 dubbo的负载均衡怎么做,讲一下具体代码实现。
8 dubbo的服务容错怎么做,怎么知道服务器宕机了 zk的心跳机制维持服务器连接
9 好了我要问的差不多啦。

交叉面:
隔壁部门的技术主管,问了一道算法题。。就没问别的了。。我也是很醉。。。

题目是链表的排序,扯了4、5种方案,转成数组,直接排序,拆分再排序,顺序连接等等。。然后我表示不能再优化了。他就说没别的问题了。。。有点吃惊

HR面:
1 兴趣爱好
2 三年到五年的职业规划
3 意向公司和城市
4 实习经历和收获
5 实习中最大的困难
6 为什么换公司,为什么拒绝菜鸟实习offer
7 你的缺点和优点
8 你觉得你比其他人优秀的地方说三个
9 为什么想来我们部门
10 巴拉巴拉

上次发的公众号有点水就不安利了,掉粉飞快。倒是可以来我博客看看一起交流,干货比较多。


#蚂蚁集团##面经##内推##Java##阿里巴巴#
全部评论
大……大佬……话说大佬拿到offer了吗
点赞 回复 分享
发布于 2018-08-08 10:08
真大佬啊,hr感觉都快认识你了🤣
点赞 回复 分享
发布于 2018-08-08 10:08
龙神还是效率高啊
点赞 回复 分享
发布于 2018-08-08 10:19
刚啊 大佬
点赞 回复 分享
发布于 2018-08-08 10:21
大。。。大佬
点赞 回复 分享
发布于 2018-08-08 10:58
真大佬,确实佩服
点赞 回复 分享
发布于 2018-08-08 11:18
果然华科的大佬就是不一样 啊
点赞 回复 分享
发布于 2018-08-08 11:25
牛批,膜拜
点赞 回复 分享
发布于 2018-08-08 11:46
大佬666,来参见下大佬
点赞 回复 分享
发布于 2018-08-08 14:04
真大佬,真真真大佬!
点赞 回复 分享
发布于 2018-08-08 15:40
欢迎大家投递阿里巴巴的岗位,岗位介绍:https://www.nowcoder.com/discuss/91393?type=0&order=0&pos=18&page=1 报名请点击下面的链接 http://alibaba.tupu360.com/campusActivity/getActivityInfo?activityCode=bujp578e8%2FbcDNZh%2FRuwvqqFOqa17CcvfxDlghT4VSw%3D 或者扫面如下二维码
点赞 回复 分享
发布于 2018-08-08 17:38
大佬!!!
点赞 回复 分享
发布于 2018-08-08 20:17
大佬,一般跳过一面是什么情况呀?我之前也有一面,然后也是直接跳过了,不知道为什么
点赞 回复 分享
发布于 2018-08-09 09:16
欢迎没有投递过阿里巴巴岗位的同学再看看,最后三天时间了。 https://www.nowcoder.com/discuss/92048?type=7&order=0&pos=4&page=1
点赞 回复 分享
发布于 2018-08-09 09:54
楼主hr有说啥时候出结果吗,我面完hr都两个多星期了还是面试中
点赞 回复 分享
发布于 2018-08-09 10:14
你们有没有阿里校招群。求推荐一个
点赞 回复 分享
发布于 2018-08-09 21:59
请教一下大佬 这么多dubbo的内容 是不是你项目中用了才会问 
点赞 回复 分享
发布于 2018-10-08 22:38
本文发于微信公号【程序员江湖】分享程序员求职、技术和生活的那些事 | 关注即可领取3T免费学习资料,BAT校招老司机等你来撩
点赞 回复 分享
发布于 2018-11-17 10:52

相关推荐

自我介绍请说下什么是单例模式(没啥印象,感觉和快速原型混起来了,答的比较含糊)说下mvc架构(就简单介绍了下模型视图控制器以及作用)可以说下http的常见状态码吗(各类说了与什么有关以及几个常见的)可以说下acid吗(介绍那四个特性)可以介绍下进程与线程吗(简单说了下进程是资源分配的基本单位,线程是调度的基本单位,以及特点)可以介绍下多进程与多线程优缺点吗(简单说了下多线程并发度更高,但是开销会大一些等)项目:介绍了分布式博客系统你项目的难点是什么(讲了一开始处理跨域请求,后续的服务线上容器化)你的项目一个方法用了update语句,它这样写你觉得有什么问题(说不出来)你的项目submitlikes方法用到了MySQL事务吗(没有,说了当时遇到问题,后端没法和MySQL同时优化,只能通过嵌入sql)算法:20分钟用On实现了找出只含有abc字母主串中含abc子串个数。十五分钟我用双指针写出来了,但有个细节没处理好,有的case过不了跟面试官说了思路,就是两个指针找到第一个含abc最短子串,然后加上后续字母数,同时在保持abc均有情况下,前指针向后挪,移动一位加一个,以此迭代反问:你觉得我有什么不匹配该岗位地方吗(面试官说本次面试的事情保密)你建议我学校不算特别强的情况下,走golang栈去校招吗(本身语言不是限制的,主要是你对基础知识的理解,学语言也就半个月的事儿。当然有的公司可能会问你特定语言的)你提到像现在高校很多教授不具备工业化开发经验,课程也是很落后的,那我们校招生只能靠自己摸石头过河,怎么办呢(计算机专业迭代本身非常快,特别需要有极强的自学能力,你比较建议能做的,就是找已经工作的学长学姐,咨询下,然后针对岗位要求针对性学习)像我这样考完研过年后才开始准备校招了,春招还有希望进大厂吗(现在环境非常差,进字节本身就是一件非常难得事情,春招三四月份其实现在就已经开始了,时间挺极限的,并且面试本来就是一件很看缘分的事儿,比如刚好这道题你会背,你跟面试官聊得来。你在提高自学能力到比较高的情况下,进字节这种大厂是有可能的。)我本身都在学校,那到底怎么做,有什么才能让我更好通过面试呢(很多校招进来的学生,做的项目也都是查表,也不如你做项目,但是他们有一个baseline,并且有吸引到面试官的地方。所以你在baseline的地方一定不能跨,并且要找自己的闪光点)可以详细说下baseline吗(比如说,面试问到的知识点都要答的好,现在有的教材也是错的。同时,算法题也要能写出来。所以在baseline具备的同时也需要具备一定的计算机知识的天赋和沉淀。这些才是最重要的)#牛客AI配图神器#
牛客565757902号:感觉这几个反问的回答都蛮有含金量的
查看15道真题和解析
点赞 评论 收藏
分享
评论
19
293
分享

创作者周榜

更多
牛客网
牛客企业服务