「同程艺龙」一年经验拿到offer面经分享

此次部门老大面没怎么问简历上的内容,估计是一面里有面试记录,所以一面面的大部分内容都没有再次问到。从这次面试来看,对于一个知识点你理解了和用你自己的语言表述出来是两种不一样的情况!!然后就是自己在Java技术栈的广度和深度都欠缺太多,想进互联网大厂的话还任重道远啊。但是非常幸运,成功上岸拿到了offer,现在把一些面试题和个人的经验分享出来,希望对大家有所帮助!

除了这次的面试题,我也整理了一份 架构师全套视频教程和关于java的系统化资料,包括java核心知识点、面试专题和20年最新的互联网真题、电子书等都有,希望对大家有所帮助!
有需要的朋友可以点一点下方链接免费领取!
链接:1103806531暗号:CSDN

「同程艺龙」一年经验拿到offer面经分享_第1张图片

电话面试(一面)

  1. 请求响应断链如何解决?请求下单之后,网络断开了,我们这边请求没接收到下单的结果怎么办?
  2. 重复出票怎么处理?重复下单怎么处理?
  3. 分布式锁如何实现的?redis分布式锁和zk分布式锁有什么区别?
  4. redis分布式锁实现的话,setnx和expire命令,如果A线程将expire操作操作到了B线程了,也就是expire了另一个线程的资源,这种怎么避免?
  5. 线程池是什么?
  6. Future是什么?有什么作用?
  7. 线程池核心数是20个,最大线程数是40个,讲一下任务进入线程池的原理逻辑?
  8. 线程池阻塞队列有哪几种?
  9. 优先队列了解吗?优先队列底层实现机制?
  10. 你说下LinkedBlockingQueue底层阻塞的原理是什么?
  11. 你说一下ReentrantLock和Synchronize的区别?
  12. ReentrantLock和读写锁的区别?
  13. AQS里的setState()是什么时候调用?
  14. 讲一下锁的升级策略?
  15. HTTP和HTTPS的区别?
  16. 对称加密和非对称加密有什么区别?HTTPS是用到了那种加密方式?
  17. 看你简历说是熟悉JVM,那JVM有哪几种GC算法?
  18. 新生代中为什么会有From Survice和To Survice区?
  19. 使用CMS垃圾收集器时,遇到大对象比较多导致频繁GC,该如何解决这种情况?
  20. GCRoot是什么?哪些对象是GCRoot?
  21. MySQL中有哪些索引类型?
  22. B+树和B树有什么区别?
  23. 联合索引什么情况下会失效?
  24. 最左匹配原则是什么?
  25. MySQL有哪几种隔离级别?
  26. 幻读是什么?RR隔离级别能解决幻读吗?那RR隔离级别是怎么解决幻读的?
  27. 你知道间隙锁吗?间隙锁的作用是什么?是怎么解决幻读的?
  28. SpringAOP了解吗?有哪几种实现方式?
  29. CGLIB什么情况下会失效?
  30. 为什么要同时重写equals和hashcode?

总结

其实场景题还是老样子,回答的不好,然后知识点之间细节没拉满,归根结底就是学的不够好,不够扎实。自己离互联网大厂还是有大差距,接下来还需加倍努力提升自己的水平,要拉满细节!!!

「同程艺龙」一年经验拿到offer面经分享_第2张图片

现场面试(二面)

二面 现场部门老大面 是在同程艺龙成都办公地面试的,时间是在周六下午三点,公司周末双休没上班,只有面试官、hr以及前台小姐姐几个人。

  1. 你在项目中学习到了哪些?或者是遇到了哪些困难?怎么解决的?
  2. 如何保证你的调用链路的稳定性?如何保证服务调用链路请求的幂等性?
  3. mq消息的幂等性如何保证?
  4. mq如何保证顺序消费?
  5. 线程池创建有哪几种方式?
  6. 线程池核心参数有哪些?
  7. 线程池中拒绝策略有几种?分别说一下各自的作用?
  8. Redis都用到了哪些场景?除了缓存还有其他场景吗?
  9. 缓存雪崩、穿透、击穿是什么?如何解决?
  10. 对于穿透解决方案给key对应的value对写为null、未知错误、稍后重试时,如何解决当数据库真的有对应数据时,缓存数据没更新导致正式用户请求访问不到缓存?
  11. 你刚刚是讲到了布隆过滤器吗?讲一下布隆过滤器的作用以及底层原理?
  12. 如何保证缓存和数据库数据一致性?
  13. 对实时性要求比较高的缓存如何保证和数据库数据一致性?
  14. 在Redis中常用的数据结构有哪些?
  15. Redis中Hash结构的扩容机制是什么?那你可以讲讲HashMap的扩容机制吗?
  16. Redis中的过期机制有哪几种?底层都是如何实现的?
  17. Redis的部署有哪些方式?
  18. Redis的cluster和Setinel实现原理是什么?
  19. 数据库的查询优化、排查慢sql以及sql优化是怎么进行的?详细点说一下
  20. InnoDB中哈希索引实现机制是什么?
  21. MySQL中唯一索引和聚镞索引相比,性能如何?
  22. 除了常用排序算法,你还会用到什么算法?或者了解什么算法?
  23. Redis中跳表的原理了解吗?
  24. 项目中用过自定义SpringBoot starter吗?starter是如何实现的?
  25. 有没有做过或了解过大批量数据迁移,类似于大批量MySQL数据迁移到ES中的操作?
  26. 分布式事务了解吗?你们项目中都用到了哪些分布式事务?都有哪些优缺点?
  27. 说一下JVM内存模型有哪些?说一下JVM的内存区域?
  28. 在Java中,有哪些包是直接定义在对外内存中的?
  29. 线上做过哪些性能排查以及性能优化的操作?
  30. 了解Java中的happen-before原则吗?
  31. 除了用锁、volatile之外,如何保证一个线程的变量能被另外一个线程的变量给实时读取到?
    「同程艺龙」一年经验拿到offer面经分享_第3张图片

最后:

希望这篇文章对大家有帮助!

我这边也整理了一份 架构师全套视频教程 和关于java的系统化资料,包括java核心知识点、面试专题和20年最新的互联网真题、电子书等都有。

有需要的朋友可以点一点下方链接免费领取! 链接:1103806531暗号:CSDN
「同程艺龙」一年经验拿到offer面经分享_第4张图片「同程艺龙」一年经验拿到offer面经分享_第5张图片

你可能感兴趣的:(Java学习,Java,Java面试题整理,数据库,分布式,redis,面试,java)