虾皮,网易云,京东,阿里校招面经!附参考答案
作者:smarxdray
虾皮 sg 三轮面经(通过)
一面(2021.7.8)
- 【项目】介绍下百度的实习经历
- 用户登录密码存储,哈希和加盐的过程是在前端还是后端
- 浏览器输入 URL 过程
- tcp 连接建立过程
- http 与 https 的区别
- 【项目】介绍下分片降低 redis 热键访问压力
- 写 db 数据如何同步到 cache
- cache key 失效后大量流量请求 db 如何处理(数据存在于 db 种)
- 【项目】介绍下数据库慢查询的优化
- MySQL 索引默认数据结构
- B+树相对 B 树优点
- MySQL 里的主键,外键以及组合索引分别在什么场景下使用
- 为什么实际项目里建议不用外键
- 【设计题】根据查询场景设计索引
- 常见的用来计算哈希的方法
- 如何解决哈希冲突
- 【算法题】实现 LRU cache
- 【算法题】给定数字 N,打印 1~N 中心螺旋矩阵
参考答案 :
- 如何加密传输和存储用户密码 : https://zhuanlan.zhihu.com/p/36603247
- HTTP vs HTTPS(应用层):https://javaguide.cn/cs-basics/network/http&https.html
- 计算机网络常见知识点&面试题(补充):https://javaguide.cn/cs-basics/network/other-network-questions.html
- 安全系列之——主流 Hash 散列算法介绍和使用 :https://cloud.tencent.com/developer/news/682510
- Redis 知识点&面试题总结:https://javaguide.cn/database/redis/redis-questions-01.html
- MySQL 知识点&面试题总结 : https://javaguide.cn/database/mysql/mysql-questions-01.html
- 如何在 Java 中实现 LRU 缓存 :https://www.baeldung.com/java-lru-cache
二面(2021.7.16)
- 团队介绍
- 自我介绍
- 印象最深刻的项目
- redis 的 zset 数据结构
- 加盐的目的
- 重放指的是什么
- 介绍下彩虹表,彩虹表为什么叫彩虹表
- 用户登录状态怎么保持
- https 为什么需要证书
- 加盐过程,盐如何存储
- 实现一个向用户展示商品历史价格的网站,
- 百万级别商品,爬虫脚本怎么解决
- 什么样的分布式方案
- 布隆过滤器原理
- 用户量增大,如何提升系统容量
- 消息队列作用
- loadbalancer 如何实现分布式
- 缓存如何实现分布式
- 哈希如何减少重哈希代价
- 如何分析热键
- 增强 db 能力的方案
- 网站会面临的安全问题
- 介绍下 csrf,攻击者如何拿到用户身份,csrf 预防方法,csrf token 如何实现无法伪造
- 如何应对 shopee 钓鱼网站
- 为什么选 sg shopee,国内与 sg 的倾向,有通过渠道了解过 sg 吗
- 字节与百度工作方式的区别,眼下喜欢哪一种
- 反问环节
参考答案(部分参考答案和一面中的重合了,这里就不多放一编了):
- 什么是彩虹表?:https://www.zhihu.com/question/19790488 、密码破解的利器——彩虹表(rainbow table):https://www.jianshu.com/p/732d9d960411
- TikTok 三面:“聊聊 TCP/IP 常见的攻击手段”:https://mp.weixin.qq.com/s/U8S8IEb_rH5FHUKvoBJCUg
- 消息队列知识点&面试题总结 : https://javaguide.cn/high-performance/message-queue/message-queue.html
- 布隆过滤器:https://javaguide.cn/cs-basics/data-structure/bloom-filter/
- 谈谈 redis 的热 key 问题如何解决:https://www.cnblogs.com/rjzheng/p/10874537.html、如何快速定位 Redis 热 key:https://www.infoq.cn/article/3l3zaq4h8xpnom2glsyi