携程1面、2面、hr面面经
1面
常见八股+场景题
1、hashmap相关
2、JVM垃圾回收相关
3、线程池相关
4、volatile相关
5、10亿个随机数,如何排序
6、static 变量的使用在多线程中应该如何考虑
7、Redis和MySQL如何保证数据一致性
8、MySQL事务
9、Redis分布式锁
10、MQ消息积压、丢失相关
11、对分布式了解
2面
项目相关
1、实习项目相关
2、个人项目
2-1、DB怎么存储的?索引是什么?es中存储了什么?主要做了什么?全文检索索引相关?
2-2、每个人的文章怎么存储的?如果我要实现每个人登录之后可以查询自己的文章应该怎么做?那表的索引应该怎么构建?怎么去查询?查询的过程是怎么样的?(这里讨论了一下回表)分库分表怎么分?水平拆分怎么选择分片?用哪一个字段来做分片键?用什么分片算法?
2-3、用jwt token做了什么?为什么用它?过期时间是多久?怎么配置的?jwt实际的内容是什么?它的过期机制了解吗?它的组成部分都有什么?签名部的加密算法用的什么?
2-4、排行榜功能怎么实现的?那这个数据是动态的,你怎么更新排行榜的?多长时间更新一次?
2-5、rabbitmq怎么实现数据库和es数据最终一致性?数据的更新过程是怎样的流程?有一个消息消费者在监听,假如消息消费异常你应该怎么处理?
hr面
主要是实习和比赛,和一些正常的问题,没有雷区。