5.9 AutoMQ暑期实习二面
又是最难绷的一集,本以为一面挂了,没想到第二天就约二面,谁知道二面竟是我经历的面试中最难的一次,面了足足一个多小时(没有做题)
不管结果如何,这次确实学到了很多
- 自我介绍;
- 介绍做过的项目?
- 你的项目是什么类型的,有其他人使用过吗?项目的类型?用户是什么?
- 有什么比较难的问题?怎么解决的?
- 缓存一致性的方案?有绝对的缓存一致性吗?
- 除了难题这个还有吗?
- 怎么实现计数统计的?为什么需要缓存?
- redis是通过什么指令计数的?
- 分类和标签是什么?为什么需要放入缓存?
- redis缓存能处理高并发请求的上限是多少?
- 如果只有一个redis服务器,又有上千万的并发请求?应该怎么做?(高并发怎么解决?)
- 登录认证怎么实现的?具体流程?
- 前端怎么判断用户是否完成登录?
- 半长连接是什么?和websocket有什么区别?是什么协议?为什么能够实现从服务端向客户端发送消息?
- 自动登录是在前端还是后端实现的?具体实现的流程?
- 服务端怎么拿到用户输入的验证码的?是怎么找到他所需要的半长连接的?用什么来存储这个半长连接的?如果服务端部署在了两个服务器中,还能登录吗?如果服务器宕机了,那么还能找到对应的连接吗?
- 事务的四种隔离级别?他们有什么区别?分别在什么场景下使用?你说的这些的mysql中的事务,还是通用的?
- mysql的可重复读能够解决三个问题吗?(为什么?)
- 并发事务的会带来哪些问题?不可重复读和幻读有什么区别?不可重复读包括幻读?
- 索引创建的原则?数据量比较大创建索引,这个大指多少?控制索引的数量,因为会导致增删改的速度变慢,这个数量又是多少?
- 什么情况下需要使用联合索引?联合索引的使用注意事项?比如姓名和性别,应该哪个放在前面?如果两个都会单独查询,应该哪个在前面?加入查询的概率一样,应该哪个放在前面?
- 什么情况下索引会失效?
- 如果要查询数据,应该用哈希表还是树?
更新,第二天boss上问了面试官,已经挂了