首页 > 【同程艺龙】一年Java经验一、二面面经(已拿offer)
头像
菜是原罪·
编辑于 2020-09-08 21:50
+ 关注

【同程艺龙】一年Java经验一、二面面经(已拿offer)

公司:同程艺龙成都bu
岗位:Java开发工程师
形式:电话面试(一面)
市场:大约1h

直接上面经内容:

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和读写锁的区别?
12. AQS里的setState()是什么时候调用?
13. 讲一下锁的升级策略?
14. HTTP和HTTPS的区别?
15. 对称加密和非对称加密有什么区别?HTTPS是用到了那种加密方式?
16. 看你简历说是熟悉JVM,那JVM有哪几种GC算法?
17. 新生代中为什么会有From Survice和To Survice区?
18. 使用CMS垃圾收集器时,遇到大对象比较多导致频繁GC,该如何解决这种情况?
19. GCRoot是什么?哪些对象是GCRoot?
20. MySQL中有哪些索引类型?
21. B+树和B树有什么区别?
22. 联合索引什么情况下会失效?
23. 最左匹配原则是什么?
24. MySQL有哪几种隔离级别?
25. 幻读是什么?RR隔离级别能解决幻读吗?那RR隔离级别是怎么解决幻读的?
26. 你知道间隙锁吗?间隙锁的作用是什么?是怎么解决幻读的?
27. SpringAOP了解吗?有哪几种实现方式?
28. CGLIB什么情况下会失效?
29. 为什么要同时重写equals和hashcode?

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

========== 分割线 ==========

公司:同程艺龙成都bu
岗位:Java开发工程师
形式:现场面试(二面)
时长:50min

二面现场部门老大面是在同程艺龙成都办公地面试的,时间是在周六下午三点,公司周末双休没上班,只有面试官、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之外,如何保证一个线程的变量能被另外一个线程的变量给实时读取到?
总结:本次面试在经过面试官的同意后对本次面试进行了录音,方便之后进行面试复盘。从这次复盘的结果来看,此次部门老大面没怎么问简历上的内容,估计是一面里有面试记录,所以一面面的大部分内容都没有再次问到。从这次面试来看,对于一个知识点你理解了和用你自己的语言表述出来是两种不一样的情况!!然后就是自己在Java技术栈的广度和深度都欠缺太多,想进互联网大厂的话还任重道远啊。许愿Offer。



====== 分割线 ======

非常幸运,成功上岸拿到了offer,入职之后还需要继续加倍努力,冲鸭!!!

更多模拟面试

全部评论

(9) 回帖
加载中...
话题 回帖

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐