记录我的面试经历--Go开
杭州-杨帆出海一面
第一个面试官:
- h5的了解
- h5和h4的区别
- redis在项目的使用场景
- 在redis的集群中,你使用redis的lpop去扣库存的时候,集群里的一个机器挂了,会不会有什么问题
- redis两个节点之间的数据同步延迟,网络波动等导致两个节点的库存不一致,怎么解决
- redis的其他数据结构和使用场景
- 你认为在使用redis的过程中会不会产生什么问题,怎么解决
- 写的value比较大的时候,比如string写入一个200M, 会产生什么风险,怎么解决
- 我们在日常使用这个200M的字符串会带来什么问题
- 某一个接口需要对redis做很多次操作,redis本身提供了什么机制去简化这个流程
- pipline的原理
- 我在pipeline里面压入了10个操作(1-10),一次push到redis,到达之后这10个链接的顺序是确定的吗
- redis的持久化
- aof和rdb的优缺点
- rdb和aof回复数据的流程
- 你来做redis的数据恢复,你认为应该怎么做
- 除了mysql还有用过其他关系行数据库吗
- mysql在做一个查询的时候,你对加索引有什么理解
- 有一个很大量级的会员表,查询条件是创建时间的范围和性别,你怎么设计这个索引
- 这个联合索引,时间在前的依据是什么
- 这两个字段不允许做复合索引,只能建单个索引,你觉得给那个字段收益更好?
- 有了解过其他开发语言吗
- gozero和nodejs在处理前端请求的时候线程模型上有什么区别,怎么接受处理请求
- 处理订单自动取消--追问rocketMQ的延时时间是固定的,想做自定义时间怎么做
- 定时任务扫描redis的list,我们设置5秒执行一次,没有实时处理订单,怎么把这个时间抹平,保证实时性
- websocket通信不可达呢-- 面试官说:xxlJob一个分布式调度平台有机制解决
第二个面试官:
- 评价下自己,你自己的技术沉淀在哪些方面,哪些方面比较擅长
- 你对於你自己技术积累的方向有什么想法吗
- 你处于迷茫还是有一个目标的情况
- 什么时候确定这个go和mysql的小目标的
- 你认真学go语言学了多久
- go的并发包里面还有很多根据,有没有涉猎
- 挑一个你了解的讲讲底层实现-我讲的Mutex
- TryLock再说一下
- 了解操作系统的终断,挂起这些机制吗
- 阻塞之后想要拿锁的这些协程会干什么
- 自旋对CPU会造成什么影响
- 职业规划
二面
- 离职原因
- 除了go还了解其他语言吗,服务端的
- 秒杀的库存怎么管理
- 库存是什么时候预热的
- 整个秒杀流程里库存的扣减是怎么设计的
- 下单异常怎么处理
- 峰值QPS?是接口的QPS吗?打到redis的QPS是多少
- 突增80万流量怎么处理
- 限流怎么做的
- 令牌桶怎么实现
- 这个令牌是单机还是集群?你怎么设计?
- 期望薪资