首页 > 笔经面经 > 各大厂后端社招面经,回顾这两个月的总结,不断的试错不断地坚持

各大厂后端社招面经,回顾这两个月的总结,不断的试错不断地坚持

头像
本兮言✨
编辑于 2019-12-31 10:43:06 APP内打开
赞 17 | 收藏 110 | 回复8 | 浏览6318
从四月底开始复习,然后边面试边复习,总结,终于喜得BAT、TMD其中两家的offer,果然对于刚毕业不到一年经验的我们来说,社招还是有点残酷的,一次次的失败,还要不断复习不断面试,其中过程从四月底到六月底差不多两月,每天晚上学习到一点,早上七点半起来在学习一个小时半然后去公司上班,所以我自己坚信,肯定会有有所回报的,所以不断努力下去,面试过程中可能是我再一年当中进步最大的时候,疯狂的学习,不断的反思,最终的成功,也让我明白了自己有多菜,我深深的知道,这个只是起点,以后的路还要继续,更加努力才行!! ps:个人博客 :https://blog.csdn.net/ligupeng7929/article/list/1

以下就是自己面试题的分享,希望和大家一起进步,其实也有记得不完整的部分,希望大家体谅一下

360奇安(本公司) 天擎部门面试:

问题所在:
1、自己项目准备的不充足,以至于被问倒,对于自己做的事情申述不够清楚,没有多方向思考问题,比如php导出,如果存在把内存打爆,怎么处理的,还有项目架构图理解的不到位。
2、自己的知识点复习不到位,在两个知识点被问到 redis的sentinel上投票选举的问题,以及脑裂问题怎么处理。
问题:1、redis的sentinel上投票选举的问题 raft算法
2、脑裂问题怎么处理
3、php导出,如果存在把内存打爆,怎么处理的
4、你觉得PHP相对比JAVA或者GO有什么异同
5、说说你在项目上有什么出色的表现? 我的说是我用时间切分进行算法上数据的调优
6、对于你们这个架构你觉得还有什么可以优化的
7、redis单线程结构有什么优势?有什么问题?  主要优势单线程,避免线程切换产生静态消耗,缺点是容易阻塞,虽然redis使用io复用epoll和输入缓冲区把命令按照队列先进先出输入等等
8、你觉得针对redis这些缺点那些命令在redis上不可使用? 比如keys、hgetall等等这些命令 建议用scan等等 这方面阐述
9、你觉得为什么项目中没有用mysql而用了es,redis在这里到底起到了什么作用?因为架构上这里理解不清楚,最后回答自己都觉得有漏洞了
10、你觉得redis什么算有用? 有用? 是说存进去了还是说命中缓存?最后把缓存命中率是什么说了一遍
11、看你上面写的开始学习go,你说说GO这边组合模式用PHP是怎么实现的? 组合....我都没学到
12、如果产品这里在你导出大文件的情况下,太占资源,你该怎么办? 断点续传

深信服
1 如果打开页面慢的话,怎么排查
2 怎么实现商城的商品推荐系统
3 sql语句 求一个成绩表中分数超过60的人的科目
4 innodb和myisam有什么区别
5 反转字符串
6 php的date参数
7 mysql的注入,怎么处理
8 平常在公司都处理什么工作的
9 一个sql语句不使用大于小于号中确定范围[ 60,80]
11 include和require区别
12 ===和==区别
13 date函数怎么插入上周时间

作业帮:
1、三次握手、四次挥手,为什么time_wait,2MSL具体多长时间
2、B+树和B树,联合索引等原理
3、自己项目数据库表是怎么样子的
4、一般项目PHP起几个进程
5、项目上线后有几个PHP服务器,单服务器出故障怎么处理   计算、存储、业务
6、网站打开慢了,你自己怎么处理
7、WAF有几台机器
8、你这个千万级别数据怎么处理的,分库分表?
9、PHP弱语言类型怎么实现的
10、PHP和JAVA区别
11、你们这边redis集群是怎么样子的
12、怎么查看CPU负载,怎么查看一个客户下有多少进程
13、怎么将Kafka数据导入数据库,如果防止重复消费,以及如果防止数据不丢失,redis分布式锁和redlock以及zokkerper锁的实现区别,优点是什么
总结一下:狂怼项目,对项目中细节都问的特别细,简称深入灵魂的拷问

顺丰
一面:
1、狂怼项目,然后问一些项目相关的知识,比如自己双写不一致问题,是写频繁还是读频繁,如果写频繁为什么还需要缓存,如果我要做的就是要修改数据库然后修改redis,怎么解决不一致问题。我的回答是redis分布式锁,然后讨论分布式锁以及redlock锁等等
2、http和https区别,非对称加密的过程
3、mysql的悲观锁和乐观锁区别和应用,ABA问题的解决
4、mysql索引的底层B+树,说说为什么使用B+树,跟红黑树有什么去呗
5、事务的可重复读幻读是什么情况,怎么解决幻读
6、http的一些字段,就你知道的回答一些
7、三次握手和四次挥手、为什么需要三次握手
二面:
1、http和https的区别,CA证书的优缺点,https抓包的时候出现的是什么,https防护的是什么
2、apache和nginx的区别
3、nginx的epoll模型的介绍以及io多路复用模型
4、狂怼项目
5、算法题,快排和一个变种的归并

今日头条
一面:
1、说说你的项目架构图以及数据走向
2、PHP源码的数组的排序是在底层源码哪里体现的。
3、PHP的垃圾回收机制
4、状态码 499、502、504这些是在什么场景出现的,你有在实际项目中看到吗
5、PHP如果一个页面超时,怎么查看是哪一个接口超时的。这里查看慢查询日志
6、PHP的FPM进程管理器的三种管理模式都有什么
7、比如你的服务器,一个小时前的cpu占用率到达百分之百,现在恢复正常,你怎么排查出来之前是什么原理导致的(这个可以看nginx的日志)
8、mysql的索引底层,以及覆盖索引和普通索引的区别,你平常怎么看你的SQL有没有使用到索引(我说的explain执行计划),如果使用了覆盖索引,在执行计划上面那个字段会体现,显示的是什么
9、redis的缓存穿透,布隆过滤器是怎么设计的

滴滴
一面:
1、两个手写算法题,一个复杂链表的翻转,一个字符串累加和
2、php的hashtable
3、foreach为什么比for循环快
4、php的fpm进程管理器的三种模式,优缺点是什么
5、php fpm进程master进程和worker进程分别的责任是什么
6、php常用的运行模式有哪些,fpm和cli运行生命周期是什么和fpm模式中在进行fcgi-accept-request中如何解决惊群现象的,你知道nginx怎么解决惊群现象的,区别呢?
7、redis数据结构是哪些,然后问我有序集合的底层,跳表的实现,时间复杂度以及如何加一个数据
8、redis字典的底层hashtable,以及和php的数组底层hashtable对比,以及redis的rehash过程,以及优化渐变式rehash
9、mysql索引底层数据结构,为什么使用b+树不用b树
10、mysql的数据页空洞是怎么造成的,如果解决,索引是局部还是全局的
11、mysql事务都有什么,以及幻读因为什么造成的
你有什么要问我的
二面
1、一个变种的纸牌算法(因为之前不知道,自己推,解出来将近半个小时)
2、画出项目架构图,以及数据流向,然后怼项目
3、进程和线程区别,什么时候用多进程什么时候用多线程
4、mysql索引底层数据结构,以及redis的hashtable和建遍式rehash过程
5、mysql的锁都有什么,怎么使用的,怎么结果mysql的可重复读的幻读,MyISAM和innodb区别,还有innodb的crash-safe,以及redo log 和binlog的2pc提交方式,MVCC的实现原理,一致性视图和undo log
6、你的领导怎么评价你、你的同事怎么评价你、你自己怎么评价你自己、有什么优缺点、短期的目标计划呢、怎么改进自己的优缺点

腾讯:
一面:
1、怼项目,然后根据CAP理论设计出比当前解决方案更好的,如何架构
2、你的PHP是怎么做安全处理的,比如SQL注入、xss、csrf
3、项目开发怎么迅捷
4、设计模式的使用
5、mysql如果发生了抖动,怎么排查问题
6、你能说一下nginx的日志能排查些出什么问题
7、你的以后目标是什么,如何持续学习,你认为的架构师是什么样子的
二面:
1、怼项目
2、设计一个限流的算法
3、平常redis用的多的数据结构是什么,跳表实现,怎么维护索引,当时我说是一个简单的二分,手写二分算法,并且时间复杂度是怎么计算出来的  (2的k次方等于n  k等于logn)
4、设计模式用了哪些,手写出来
5、mysql的索引底层,还有explain每个字段的介绍,以及type类型都有哪些,分别都代表什么意思
6、php的话平常如果碰到不会的函数,你是怎么解决的?
7、你有什么要问我的

8条回帖

回帖
加载中...
话题 回帖

相关热帖

笔经面经近期热帖

热门推荐