携程国际化机票订单部门 Java岗凉经
一面:
1、自我介绍以及项目,略过。
2、介绍一下自认为比较有难点,成长最大的项目。
3、现场的项目部署的时候为什么要分情况考虑单实例部署和分布式部署,都分布式部署有问题吗?
4、分布式部署条件下,可以使用本地缓存吗?存在什么问题?怎么解决?
5、设计模式使用过哪些?
6、MySQL默认的事务隔离级别是什么?这个事务隔离级别下会发生什么问题?
7、幻读的具体表现是什么?有遇到过幻读问题吗?MySQL怎么解决这个问题的?
8、介绍一下间隙锁的实现。间隙锁和间隙锁在同一个事务内会发生死锁吗?
9、介绍一下MySQL索引的实现。
10、一颗B+树能存多少数据?
11、联合索引为什么要遵循最左匹配原则?
12、MySQL的排序原理了解吗?
13、JVM堆外内存(直接内存区域)遇到过OOM异常吗?怎么排查解决问题?
over
二面:
1、介绍一个印象深刻的项目,以及在项目中遇到的问题。
2、你介绍的这个项目QPS有多少,每天入库中的数据量多大,有做过压测吗?
3、数据同步的时候,为什么要双写?双写的时候会发生什么问题,如果两个库中库表数据不一致如何解决?
4、你提到可以使用Redis的zset实现延迟队列,还有别的方式可以实现吗?
5、一个业务场景题,写SQL。
题目:假设有一个数据集,数据集合中的Bean类,成员变量有员工编号、员工工资以及员工所属部门,计算出每个部门的平均工资,然后按从小到大排序。
6、SQL可以优化吗?
7、上面的题目,增加条件,使用Java实现,注意代码的健壮性和执行效率。
条件:每个部门内部去掉n个最高薪水、n个最低薪水后再计算每个部门的平均薪资,结果按照从小到大排序。如果2*n大于当前部门总人数,则n的数量减少1,直到能计算出每个部门的平均薪资。
8、当前有一批特价机票,数量有限,要进行秒杀。如何保证不会超卖?
9、可以不使用分布式锁对扣库存进行同步吗?
10、如何保证秒杀活动进行时不被恶意抢单?
11、如果是联程机票,比如A地要去C地要到B转一次机。这种情况下还要上线秒杀活动,可能出现什么问题,要怎么解决?
over
三面:
1、介绍项目。
2、问题和项目的业务太过相关,一直聊项目内的内容,讨论有没有更好的解决方案,不做详细介绍。
3、微服务组件方案选型,为什么当前公司采用nacos做注册中心和配置中心?不用Eureka和Nacos的方案。Eureka和Nacos的一致性协议分别是什么,有什么区别了解吗?
over
没有收到感谢信,两天后问hr被告知不太匹配,凉。