前段时间辞职换工作,参加了一些面试,现在也入职了,趁着还不忙稍微整理一下面经(记录一些映像比较深的吧)。
广州-爱拍
给我映像最深的就是它的笔试题了,整整4页,还是双面的,而且很多问题都有好几问的...
勉强记得的几个题:
- TCP三次握手过程
- TCP与UDP区别
- session与cookie的区别
- TCP发送数据包与接收数据包的过程
- 浏览器输入网址到显示页面其背后经历的过程
- 还有一些系统设计的题
- 算法:最长公共字串
- ...
面试题记不清了,基本上是项目相关。
广州-4399
等了一会面试官才过来,看起来挺忙的😂
- Redis常用的数据结构,除了五种基本数据结构外还有什么数据结构?
string, list, hash, set, zset, HyperLogLog, GEO, bitmap
- Redis是单线程的吗?单线程是指哪个模块是单线程?为什么单线程还能保持超高性能?
Redis 6之前是单线程,之后是多线程;I/O模块;epoll I/O复用模型
- select, poll, epoll的区别?
- 远距离两地的MySQL数据同步,如何实现?异地多活有了解过吗?
没回答上来;听说过,没深入了解
- ...
第二面因为时间原因没参加了(HR一直让我在那等...)
广州-爆米科技
- php-fpm是什么以及它的工作流程
- cgi、fast-cgi的区别
- MySQL执行一条SQL时的流程
大概是:权限校验->词法分析->语法分析->语义分析->优化器进行优化->存储引擎查询数据
- Redis通过键批量获取值时,如果数据比较多会导致性能下降,如何解决?
将需要获取的键进行分片,依次获取
- PHP中对数组进行分片的函数
array_chunk
- ...
听面试官说,好像是转转的技术团队二次创业。比较满意的一家,可惜后面打算去深圳了,只能放弃了。
广州-网易游戏
- Redis删除一个大数据键值时,有没有什么问题?
- 需要从三个物品A, B, C中随机取出一个,如何用一枚硬币做到等概率取?
最简单的就是抛两次,会有四种可能,取其中三种跟三个物品一一对应,如果是第四种就重新抛。
- 接口性能比较差,如何排查?
- 让你实现一个连接池,如何实现?
- OAuth 2.0安全问题
- 面了挺久的,问得比较深,只记得一点了...
后来到深圳也面了不少,但是很多都记不起来了,后续有想起来再更新吧。