面试题

273 阅读3分钟

数字马力(长沙) 一面

  1. 你们有用过abTest吗?
  2. 你们公司有用单测吗?
  3. 你们项目中有调度系统,是通过什么算法实现的吗?
  4. 你们线上异常怎么回滚,都回滚哪些文件
  5. 你知道乐观锁,悲观锁吗?有什么区别?
  6. 你了解哪些设计模式,都用在哪些场景?你们用的状态机有状态还是无状态的?

数字马力(长沙)-杭州二面

  1. 为什么要在简历里面写netty,你们项目中用过过netty吗?谈谈netty的原理?IO多路复用是怎么实现的?除了IO多路复用还有哪些优化?如果让你来设计一个高性能的网络框架你会怎么设计?
  2. 你们项目中哪些场景有用到多线程?有哪些主要参数?多线程的keepAliveTime是怎么实现的?你们是实际场景中是如何设置线程数量的?
  3. RocketMQ延时消息是如何实现的,通过延迟队列实现,如果在并发的情况下单个队列,性能会有影响,该如何去优化(记不清楚了)?
  4. 你们乘客和车主订单状态如何同步的,怎么解决的一致性问题,还有你们的权益锁定和解锁怎么保证的一致性?
  5. 项目中哪些有亮点可以拿出来讨论的地方
  6. 你们哪些地方用了分表分库,你们的订单ID是怎么设计的?你们的订单号不是有序的吗?
  7. 你了解mysql数据库的aicd吗?mysql 是如何保证数据库的原子性的?

塔斯汀 1面

  1. 自我介绍
  2. 你们项目中有哪些有亮点的地方可以拿出来说说吗?
  3. 你知道redis集群有哪几种,你们公司用的是哪种集群?
  4. 你知道bigKey 吗?你们平时是怎么检测的? bigkey怎么解决的?
  5. 你知道热key吗,你们是如何检测热key的?你们是如何解决的?
  6. 分布式锁是如何实现的?你知道redLock吗

孤波

  1. 自我介绍
  2. 假如服务器上的所有节点都挂了,所有请求都pengding,怎么排查?你们公司的traceId 是怎么生成的?
  3. threadLocal 原理,threadLocal使用的时候有什么需要注意吗?
  4. 线程池的主要参数有哪些?
  5. 阿里的线程池TTL解决了哪些问题?
  6. apollo 你们有使用过吗?是怎么实现数据更新过程的?是怎么实现修改bean数据的?
  7. 假如你来到我们这里能给我们带来哪些提升

其他常见问题

消息队列

  1. MQ用在哪些场景
  2. MQ 怎么保证消息有序
  3. MQ 消息丢失怎么避免
  4. MQ 消息幂等
  5. MQ 消息事务
  6. MQ 区别

redis

  1. 说说 redis 线程模型
  2. redis集群
  3. redis 持久化,刷盘机制

redission

  1. redission watchDog 里面是如何续命的
  2. lua 指令执行是有序的吗

多线程

  1. 什么时候使用多线程?线程池核心参数,线程池工作原理?
  2. volidate 可以作为锁吗?为什么?

  1. 用过哪些锁?
  2. cas和synced 区别

IO

  1. IO 模型
  2. 零拷贝

数据库

  1. 说说B+树
  2. B+树和b树的区别
  3. mysql 两种引擎的区别
  4. 深分页

架构设计

  1. 你是怎么开始一个架构设计的?
  2. 怎么设计商城商品表,怎么设计订单表

srping

  1. spring bean 的生命周期
  2. 如何监听spring bean生成周期
  3. 说说你理解的spring boot