前言

在高并发下,Java程序的GC问题属于很典型的一类问题,带来的影响往往会被进一步放大。不管是「GC频率过快」还是「GC耗时太长」,由于GC期间都存在Stop The World问题,因此很容易导致服务超时,引发性能问题。

我们团队负责的广告系统承接了比较大的C端流量,平峰期间的请求量基本达到了上千QPS,过去也遇到了很多次GC相关的线上问题。

这篇文章,我再分享一个更棘手的Young GC耗时过长的线上案例,同时会整理下YGC相关的知识点,希望让你有所收获。内容分成以下2个部分:

  • 从一次YGC耗时过长的案例说起
  • YGC的相关知识点总结

蚂蚁花呗第一次技术面(60min):

  1. Java容器有哪些?哪些是同步容器,哪些是并发容器?
  2. ArrayList和LinkedList的插入和访问的时间复杂度?
  3. java反射原理, 注解原理?
  4. 说说一致性 Hash 原理
  5. 新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?
  6. HashMap在什么情况下会扩容,或者有哪些操作会导致扩容?
  7. HashMap push方法的执行过程?
  8. HashMap检测到hash冲突后,将元素插入在链表的末尾还是开头?
  9. 1.8还采用了红黑树,讲讲红黑树的特性,为什么人家一定要用红黑树而不是AVL、B树之类的?
  10. https和http区别,有没有用过其他安全传输手段?
  11. 线程池的工作原理,几个重要参数,然后给了具体几个参数分析线程池会怎么做,最后问阻塞队列的作用是什么?
  12. linux怎么查看系统负载情况?
  13. 请详细描述springmvc处理请求全流程?
  14. spring 一个bean装配的过程?
  15. 项目用 Spring 比较多,有没有了解 Spring 的原理?AOP 和 IOC 的原理

一面一共问了15个问题,信息量还是很大的,但是可以看到这些问题都不算难,主要是考察基础知识的掌握情况,这一轮面试的难度数据一面的正常难度,持续的时长也算是正常范围。

蚂蚁花呗二次技术面(30min)

  1. 查询中哪些情况不会使用索引?
  2. 数据库索引,底层是怎样实现的,为什么要用B树索引?
  3. Mysql主从同步的实现原理?
  4. MySQL是怎么用B+树?
  5. 谈谈数据库乐观锁与悲观锁?
  6. 有使用过哪些NoSQL数据库?MongoDB和Redis适用哪些场景?
  7. 描述分布式事务之TCC服务设计?
  8. Redis和memcache有什么区别?Redis为什么比memcache有优势?
  9. Redis 的数据结构
  10. 海量数据过滤,黑名单过滤一个 url。
  11. 讲一讲AtomicInteger,为什么要用CAS而不是synchronized?

蚂蚁花呗三次技术面(25min)

  1. 考虑redis的时候,有没有考虑容量?大概数据量会有多少?
  2. Redis 的 list zset 的底层实现
  3. solr和mongodb的区别,存数据为什么不用solr?
  4. 分布式 session 的共享方案有哪些,有什么优劣势
  5. 谈谈分布式锁、以及分布式全局唯一ID的实现比较?
  6. 集群监控的时候,重点需要关注哪些技术指标?这些指标如何优化?
  7. 从千万的数据到亿级的数据,会面临哪些技术挑战?你的技术解决思路?
  8. 数据库分库分表需要怎样来实现?
  9. 排序算法的复杂度,快速排序非递归实现。
  10. 消息中间件有哪些?他们之间的优劣势?

蚂蚁花呗四次技术面(15min)

  1. 分布式架构设计哪方面比较熟悉
  2. 介绍你实践的性能优化案例,以及你的优化思路
  3. 介绍项目
  4. 谈一个你觉得你学到最多的项目,使用了什么技术,挑战在哪里
  5. 各种聊项目,从项目的架构设计到部署流程。
  6. 最近有没有学习过新技术?
  7. 有什么想问我的?
  8. 最近两年遇到的最大的挫折,从挫折中学到了什么?
  9. 三年到五年的职业规划?

HR面

1.工作中遇到的最大挑战是什么,你如何克服的?

2.你最大的优点和最大的缺点,各自说一个?

3.未来的职业发展,短期和长期的规划是什么?

最后,你懂的,主要就是HR走流程了,主要问了未来的职业规划。

写在最后

以上就是我的面试过程,为了这次面试,也收集了很多的面试题,反正我已经面过了,那就免费分享出来吧!

需要的朋友:关注一下,然后点击这里即可免费领取

以下是部分面试题截图

需要的朋友:关注一下,然后点击这里即可免费领取

以下是部分面试题截图

五面阿里拿下飞猪事业部offer,面试题附答案相关推荐

  1. 五面阿里拿下飞猪事业部offer,统统给你解决!

    前言 在大数据.高并发的系统中,为了突破瓶颈,会将系统进行水平扩展和垂直拆分,形成独立的服务.每个独立的服务背后,可能是一个集群在对外提供服务.这就会碰到一个问题,整个系统是由多个服务(子系统)组成的 ...

  2. 从零开始学数据结构和算法:五面阿里拿下飞猪事业部offer,快来收藏!

    前言 面试前就有听说过字节比较考验算法,面试的时候果然是,还好自己刷题比较多,这也验证了一个说法,大家在面试字节等目前比较火的互联网公司,一定要记得多刷题,文末会有自己面试的时候准备好的面试题PDF文 ...

  3. 墙都不扶就服你!五面阿里拿下飞猪事业部offer

    一.内存与线程 1.内存结构 内存是计算机的重要部件之一,它是外存与CPU进行沟通的桥梁,计算机中所有程序的运行都在内存中进行,内存性能的强弱影响计算机整体发挥的水平.JVM的内存结构规定Java程序 ...

  4. 五面阿里拿下飞猪事业部offer,新鲜出炉阿里巴巴面试真题

    真正的春暖花开又回来了,时不时的可以和朋友约个饭,感慨今年的工作竞争压力很大,工作很不好找.作为一个开发人员,你是否面上了理想的公司,拿到了理想中的薪资? 作为程序员,跳槽就是最好的涨薪方式.前提当然 ...

  5. 五面阿里拿下飞猪事业部offer,先睹为快

    前言 最近正是跳槽季,可是最近许多的HR朋友却经常在群里或者朋友圈里抱怨,说现在的应届毕业生们跳槽跳的太快,"应届生来了两周就走人,我还什么都没教给他呢!""招人的速度赶 ...

  6. 知乎7w阅读!五面阿里拿下飞猪事业部offer,月薪30K

    消息中间件合集:MQ(ActiveMQ/RabbitMQ/RocketMQ)+Kafka+笔记 最近有好多朋友都去投岗秋招提前批,面完回来跟我说碰到消息中间件一类的问题就挂了.额,有点不知所措,于是乎 ...

  7. 输了腾讯赢了阿里:凭借27天超强度复习Java核心知识+面试神技,三面阿里斩获P6岗offer(飞猪事业部)

    写在前面 概括一下我二面腾讯的整个过程,那可叫一个起落落落起落落落落落-起 5月份时,就投了腾讯的后台开发,但迟迟没有收到面试邀请,终于在5月9号晚收到了腾讯的电话,遗憾的是那时在洗澡,并没有接到,错 ...

  8. Spark推荐实战系列之Swing算法介绍、实现与在阿里飞猪的实战应用(附代码)

    1.Swing算法介绍 Swing算法原理比较简单,是阿里早期使用到的一种召回算法,在阿里多个业务被验证过非常有效的一种召回方式,它认为 user-item-user 的结构比 itemCF 的单边结 ...

  9. 新闻 | Mapbox 牵手阿里,飞猪旅行上线六大城市地图功能

    12月5日,Mapbox 正式宣布与阿里飞猪达成合作,飞猪旅行 APP 将接入 Mapbox SDK,为出境旅行的用户提供优质的多功能性地图服务.该服务现已覆盖曼谷.迪拜.洛杉矶.巴黎.东京和悉尼六大 ...

最新文章

  1. java打印出继承体系的类(包括抽象类)、接口、域字段
  2. 单击时选择HTML文本输入中的所有文本
  3. 转:CMake 使用方法
  4. Linux安装/卸载软件教程
  5. Maven(十)通过Maven缺失servlet.api的解决方式看provide(依赖范围)
  6. 【php7扩展开发二】全局变量
  7. [vue] 在组件中怎么访问到根实例?
  8. Java多线程系列(六):深入详解Synchronized同步锁的底层实现
  9. 用 canal 监控 binlog 并实现mysql定制同步数据的功能
  10. 20162303 队列加分项-杨辉三角
  11. 创业负债累累 | 失败了的我还如何翻盘?是天台见! 我的故事还只是从这件事开始...
  12. html代码放进json数据,用json数据填充html表
  13. 【bzoj5090】组题 分数规划
  14. python数据爬虫项目
  15. 小程序毕设日志.2021.3.13
  16. java绘制雷达图_【带着canvas去流浪(6)】绘制雷达图
  17. 解决微擎框架出现Could not resolve: cloud.zhifun.cc (Domain name not found)问题
  18. 微博技术架构分析和设计
  19. 计算机专业毕业论文选哪方面,计算机专业毕业论文格式有哪些要求
  20. vue 报错vue : 无法加载文件 D:\wjx_tools\node\node_global\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsof

热门文章

  1. Unity 制作font字体
  2. java与C/C++的比较
  3. LevelDB整体介绍
  4. 记录宝塔面板后台提示“拒绝了我们的连接请求”
  5. 如何编写高质量的易语言代码?
  6. AMBA总线协议的学习-AHB,ASB,APB三种总线以及AXI接口
  7. 南卡315打假!揭露山寨耳机“十宗罪”!
  8. 戴尔服务器720dx格式化硬盘,《图解戴尔iDRAC服务器远程控制设置》.docx
  9. python如何保存excel文件
  10. HCIA(HCNA):AAA原理与配置