阿里巴巴四个部门的面经

飞猪

项目

  1. 压测的那个方面的

  2. 我做的优化

    • nginx均衡

    • rabbitmq

    • redis缓存

    • 动静分离

  3. 落到数据库的请求是多少

    top指令查看

  4. 缓存一致性

  5. 如果删除了效果怎么样

  6. 30000个都访问到数据库上了

  7. 保护数据库的策略

  8. 分库分表

  9. ioc的实现

    beanFactory,applicationContext

    初始化容器 工厂,beanwrapper,检查接口,属性注入,单例/原型(创建新的/从singleObjects里面拿),循环引用,三级缓存

  10. 常用的bean的配置方式controller什么的和他们的区别

基础

  1. Hashmap & concurrentHashMap

  2. 数组和链表

  3. 图的存储方式

支付宝国际事业部

基础

  1. hashmap时间复杂度

  2. arraylist & linkedlist

  3. 进程和线程的区别

  4. 创建线程的方式

  5. 数据库索引

  6. jvm内存分配

项目

  1. 项目架构

  2. 库存存在什么地方

  3. concurrenthashmap放在哪个服务器里

  4. 是谁把消息丢到mq里面

  5. 系统启动之后有几个进程

  6. 缓存一致性怎么实现的

  7. 能达到qps 30000吗

  8. 写了单元测试吗

  9. 版本控制用的是什么

其他

  1. 除了教科书之外有哪些技术比较了解

  2. 官方文档读的英文还是中文
其他:
  1. 有什么想问我的

阿里云

项目

  1. 哪些职责 实现了哪些功能

  2. 幂等性怎么保证的

  3. 用户可以很快的发两个请求怎么办

  4. 从提交到下单的流程

  5. 缓存一致性

    通过先更新数据库再删除缓存来实现

  6. 更新了数据库 还没有来得及更新缓存,第二个已经看到了怎么解决(我很迷惑)

  7. 超卖解决 sql中加 >1

  8. 数据库隔离级别

  9. 在哪几种隔离级别上是不会有问题的

    未提交读有问题

    面试官:恰恰相反 未提交读还是对的,可重复的话,a看到有,把db数据-1,(我还是很迷)
  10. http有了解吗

  11. 为什么想到做这个项目

  12. 遇到什么难点

  13. 环境是什么linux还是windows

  14. 怎么验证qps有效

  15. 单点登录怎么实现

  1. 开始另一个项目(小型操作系统),有什么收获

  2. 有涉及到segment fault这种的设计吗

智力题

  1. n! 这个数,末尾会有几个0

    比如3! = 6 问6的后面有几个0

    我磨磨唧唧想了一会

    说可以看1~n之间有几个产生0的因子 比如2*5=10 会有一个0,把1~n之间的2和5去掉,然后就这样判断一共有多少个(其实不好意思想太久了就瞎猜了一个),面试官说ok,听上去像是说对了?🙊

  2. 有一些随机的点和一些边,如何判断会有多少个有向无环图(DAG)

    我一开始想的是从点开始dfs,开个数组,每个点存一下自己所在的DAG的编号,最后遍历一遍就知道有多少个DAG了

    然后他说有没有办法优化,提示说可以从入度为0的点开始遍历

    我想了一会说 如果知道入度的话,是不是有多少个入度为0的点就是有多少个DAG了

    他沉默了一会说是吧

然后就问我有没有想要问他的,这么快就到反问环节了我有点慌,直接说“咦不用问哪些基础jvm什么的吗”,他哈哈哈一笑说你准备好了吗,那我问你一些吧

基础

  1. 判断对象是否被回收(引用计数,可达性)

  2. gc root哪些

  3. 本地方法栈中的变量是指哪些

  4. 新生代回收器和老生代的回收器的搭配

  5. 内存碎片

  6. 系统在oom或者gc 如何定位

不知道什么部门

基础

这个面试官有点迷,全程都没有问我什么问题,都是让我直接从一个领域里面选自己了解的讲

  1. 数据结构里面选一个,选了hashmap

  2. jdk8新特性

  3. 算法选一个讲 我选了dijkstra

  4. 数据库学了哪些,课程里面学了哪些内容

项目

这个面试官居然打开了我的github盯着代码问我

  1. 如果是真实的秒杀系统,需要做哪些改进

    我说了rabbitmq的消息丢失问题

  2. 说我的项目是有问题的但是我不太理解问题所在🤔️

  3. 消息是用来干嘛的 我说异步

  4. 异步有什么好处

  5. 重新问了一遍 如果是真实的秒杀系统,需要做哪些改进

  6. 怎么样能再增加qps

  7. 单点登录的实现有点危险

  8. mybatis底层

  9. mybatis防止sql注入我说了#{} 和 ${}的区别

  10. 另一个项目让我介绍了一下 我讲的比较细 就再没问别的

----------------------
阿里云和国际事业部联系我二面,别的还在等消息
许愿阿里🙏
#阿里巴巴##面经##Java工程师##校招#
全部评论
带老,是暑期实习吗
点赞 回复 分享
发布于 2020-03-17 16:19
盯着github源码问也太恐怖了吧
点赞 回复 分享
发布于 2020-03-18 19:45
请问飞猪是哪个部门呀
点赞 回复 分享
发布于 2021-03-22 17:11

相关推荐

不愿透露姓名的神秘牛友
11-28 19:21
已编辑
阿里云 后端开发 30k*16 硕士985
点赞 评论 收藏
分享
评论
5
40
分享
牛客网
牛客企业服务