面试:Java。感觉一般没有很刁难,题目有难度,希望能有个结果。1.HashMap,扩容过程,怎么解决哈希冲突?2.聊了一篇之前写过的 MySQL 的一篇博客,讲讲 MySQL 慢 SQL 优化思路?解决流程,应该从哪些方面考虑?3.APM,怎么监控,原理是什么?Java Agent 了解过吗?4.G1,最大的特点,标记位图,卡表卡页,SATB。5.介绍 TiDB,什么是分布式数据库?和 MySQL 比优缺点是什么?6.怎么做数据冷热分离?怎么做分库分表?为什么要用 ES?7.分布式事务几种实现方式,讲讲本地消息表、尽最大努力通知、TCC。你们选用的是什么?AT 有什么问题?8.报表 DSL 优化,享元模式优化过程,优化效果怎么样?9.单机和微服务的区别,微服务有什么问题?数据一致性问题怎么解决?幂等问题怎么解决?10.现在负责的系统分为几个模块?如何划分?怎么治理?11.MQ 使用场景有哪些?在项目中具体哪些地方用到了?12.MQ 消息发送不在 MySQL 事务中如何保证一致性?13.Kafka 四个选举,Controller 选举、Partition leader 选举、GroupCoordinator 选举、消费组协调器选举。整体设计问题,使用场景,流量规划怎么做的?14.缓存使用的具体场景,一致性问题,缓存使用常见问题有哪些?15.熔断和降级的区别,具体使用场景有哪些?16.QPS 和 TPS 的区别是什么?你们系统的最大 QPS 是多少?QPS 大了会有什么问题,怎么解决?17.如何设计一个 RPC 框架?需要考虑哪些点?
1轮面试:视频面试
面试感受:一般;面试难度:困难;面试来源:BOSS直聘