写点什么

2021 年是意义非凡的一年,架构师带你玩转 Redis 高性能缓存设计实战

用户头像
极客开源
关注
发布于: 刚刚

复习过程

  • 项目准备;

  • leetcode:刷完剑指之后每天会刷 2-4 道 leetcode

  • java 基础: 主要刷面经、重点掌握垃圾回收机制

  • 操作系统: 之前没学过,用几天时间看了一下最重要的进程线程、死锁、消费者生产者、哲学家问题、银行家算法

  • 计算机网络:花几天时间复习了一下,重点复习 tcp(三次握手四次挥手拥塞控制流量控制)、udp、https

  • 数据库: 重点了解了索引的实现以及引擎的区别

  • 数据结构和算法: 主要通过剑指 offer 和 leetcode 进行复习

  • 其他:期间也做过大大小小好几次笔试,还有一些往届练习卷

腾讯

一面(3.13 电话面)

  1. 自我介绍

  2. 介绍项目以及项目遇到的难点

  3. java 的 hashmap 是否安全?hashmap、hashtable、concurrenthashmap 的区别、底层和实现

  4. mysql 索引的底层实现

  5. jvm 垃圾回收机制

  6. tcp、udp 区别和适用场景

  7. tcp 三次握手、四次挥手,为什么挥手不能只有三次

  8. 线程和进程的区别

  9. 进程通信的方式有哪些

  10. 堆是线程共有还是私有,堆是进程共有还是私有,栈呢

  11. 了解过协程吗(我:携程???不了解呜呜呜)

  12. mysql 查询优化

  13. 快速排序的时间复杂度、原理(口述算法)

  14. 最近在看什么书

  15. 除了腾讯还投了其他的公司吗

  16. 问我愿不愿意转 go,并推荐我了解一下协程,最后让我耐心等待,面试的人太多,需要对面试的同学进行挑选,两周内会告知我结果

  17. 有什么想问的(对我的评价和学习建议)

二面(3.22 现场面)

  1. 自我介绍

  2. 问我为什么发现自己不喜欢做客户端(简历中有一个安卓实习项目)而想做后台

  3. 介绍项目(一个电商小程序)

  4. 项目中的商品是否有考虑过 xxx(忘记叫什么了,意思就是是否有考虑过同一种商品有不同的颜色、规格,在数据库中如何区分这些不同)

  5. 介绍项目的支付流程,并画一下流程(白板)

  6. 介绍一下订单状态码的含义,以及交易过程中订单状态码如何变化

  7. 如何防止商品的超卖现象

  8. 项目是否具有秒杀功能

  9. 并发的时候,如何保证性能

  10. 在分库之后,如何设计 id

  11. 在分库后,一条插入请求,在上层不做处理,如何直接在数据库找到相应的库并插入库中的某个表

  12. 当服务器的 cpu 一直很高时,如何找出原因

  13. 是否用过调试工具

  14. 当项目一直无法访问的时候,如何定位错误

  15. 介绍一下 aop 和 ioc

  16. 如何将一个 ip 地址由点分制(xxx.xxx.xxx.xxx)和 int 类型间进行相互转化

  17. 如何判断一个数是否为 2 的 n 次方

  18. 可实习时间

  19. 是否愿意转 go

  20. 有什么想问的(对我的评价和学习建议)

hr 面(3.26 电话面)

  1. 自我介绍

  2. 介绍一下实习经历

  3. 实习中遇到的困难以及如何解决这些困难

  4. 未来计划,是否读研

面试总结

一面的问题都很中规中矩,唯一卡住的就是协程了,确实不会,只能和面试官说我不了解。主要和大家分享一下二面的面试体验吧。因为二面自我感觉答得不是很好,有很多问题当时没记录下来,现在一时也想不起来。所以上面的面经并不完整。当时面试完走出大厦以为自己挂掉了,结果刷新了一下状态发现变为 hr 面,真的超级意外。现在想想大概是因为我在遇到不会的问题时,没有直接说自己不会,尽量把答案往自己知道的方向回答。


  • 第 7 题,项目没有秒杀功能我也没做过,但是了解过一些,只能和面试官说确实没有,然后让他听我讲一下我的实现思路,期间又让面试官挖出了很多问题考我 TAT

  • 第 9 题、第 10 题,面试官要求我在分库的场景下回答问题,我先回答了分表情况下如何实现,他肯定了我在分表下的做法,但是分库情况还需要另外考虑,我实在想不出来,才和他说自己没有办法实现,但这总比我直接说自己不会好。

  • 第 13 题,如何定位错误的时候,先讲了一下无法访问的几种情况,以及大量 tcp 处于 time_wait、close_wait 这两种状态的原因和解决方法。

  • 面试结束后,等电梯的时候突然想起面试中一个一直理解错误导致解不出的问题,发现自己想歪了之后赶紧编辑完答案又给面试官发了过去,这个答案后来得到了面试官的认可。

最后

总而言之,面试官问来问去,问的那些 Redis 知识点也就这么多吧,复习的不够到位,知识点掌握不够熟练,所以面试才会卡壳。将这些 Redis 面试知识解析以及我整理的一些学习笔记分享出来给大家参考学习


还有更多学习笔记面试资料也分享如下:



本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

用户头像

极客开源

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
2021年是意义非凡的一年,架构师带你玩转Redis高性能缓存设计实战