阿里巴巴-新零售-CBU技术部 实习面试经验
2019.03.09(阿里巴巴CBU一面 42min)
-
自我介绍
-
介绍比赛(设计思路、可以改进的地方)
-
reactor模型(介绍、应用场景、演变缘由)
-
介绍自定义rpc协议
-
netty如何解决粘包和拆包问题
额外的线下笔试题
- 只有一题,线下完成
//评测题目: 网络藏书馆中有1000亿本英文书,每本书都有英文名字和出版日期,我想要计算出每个英文单词总共出现的次数。需要关注以下几个功能
- 以多线程方式来处理这个功能
- 在处理过程中我随时需要知道处理的进度和当前的结果
- 注意并发安全问题
代码:Solution
2019.03.11(菜鸟 28min)
-
自我介绍
-
SDN比赛
-
天池比赛(设计思路、可以改进的地方)
-
Spring IOC and AOP
-
常见的rpc框架
-
反射机制的场景(IOC)
-
String、StringBuffer、StringBuilder
-
微服务架构中,多级链路调用过程,如果部分调用失败,如何让状态回滚
2019.03-19(阿里巴巴CBU二面 51min)
-
自我介绍
-
介绍自定义的rpc协议
-
如何实现编解码及序列化
-
同步、异步调用方式的具体实现
-
协程中的Future和Promise机制
-
有没有阅读过序列化(Java Serialization、Fastjson)之后的数据
-
Java proxy和cglib的区别(使用场景和限制)
-
Netty解决粘包的几种方式
-
Netty使用场景
-
假设有100个连接,采用NIO的方式要服务端要分配几个线程,采用BIO的方式呢?
-
实现一个程序,使得该程序循环出现"五次minor gc,五次full gc"
-
介绍一下SDN比赛
-
什么是SDN
-
如何防止DDOS攻击
-
HashMap和ConcurrentHashMap(如何保证线程安全,以及get()和put()方法的实现细节)
-
Lock和cas的区别,以及应用场景
-
常用的服务注册中心
-
服务熔断和服务降级有什么区别
-
Zookeeper和Eureka分别是满足CAP中的哪些
-
平时的学习方式
-
如何分配自己的时间
-
提问环节
2019.03.29(阿里巴巴CBU三面 44min、交叉面)
- 自我介绍
- 聊比赛
- 聊项目(rpc相关)
- 项目中遇到的最难的问题
- 基于netty实现通信,使用了哪些tcp优化参数
- 有没有论文,实验室有没有项目?本科专业是啥?研究生成绩怎么样?
- 服务路由机制是怎么实现的
- 设计一个类似"微信附近的人"的功能(考虑海量用户的场景,数据存储方式,使用什么数据结构,使用什么算法,时间复杂度和空间复杂度分别是多少)
- 平时怎么学习的
- 最近关注的开源项目
2019.04.02(阿里巴巴CBU四面 16min、hr面)
- 全程聊天,没有问什么很刁钻的问题,都是围绕简历来问的