春招收官,整理一波面经,百度美团网易互娱
3.16 美团一面 37min
-
自我介绍
-
你觉得哪个项目给你带来的提升比较大
-
介绍一下你项目中的一个模块
-
一个场景,如果用户上传一个文件,http解析怎么处理,文件比较大的情况需要读取整个文件吗
-
如果A B两点之间的单向网络延迟是10ms,服务器处理请求需要10ms,那么一个请求需要消耗多长时间(包括tcp建立连接的时间)
-
知道https协议吗,介绍一下
-
知道数字证书的作用吗
-
输入网址到浏览器中,到收到网页的整个过程,整个流程和协议
-
进程和线程的区别
-
进程间通信的方式
-
知道虚拟内存吗?为什么需要虚拟内存
-
快速排序的思想?时间复杂度是多少?
-
有什么需要问我的
3.21 美团二面 60min
-
自我介绍
-
介绍一下你觉得比较好的一个项目
-
介绍一下你这个服务器的网络API
-
你这个服务器实现了什么功能?
-
你的服务器怎么处理长连接的?
-
设想一下,http服务器怎么实现上传和下载文件
-
因为http协议类似于一个半双工协议,你怎么将其实现一个全双工?服务器也可以给客户端发起请求
-
使用两个链接实现全双工吗?如果不使用的话要怎么办
-
怎么通过扩展http协议实现全双工?
-
知道http2.0吗?怎么把http2.0的特性和实现全双工http结合起来?
-
服务器有压力测试吗?压力测试数据是多少?
-
怎么分析你的服务器目前的并发瓶颈在哪里
-
内存CPU或者其他系统资源的参数代表什么瓶颈?
-
除了系统资源瓶颈,并发瓶颈如果出在逻辑错误上该怎么检测?
-
如果使用日志的话,万一错误很多非常杂乱,你该怎么处理
-
如果我需要一个命令直接输出呢?比如一键输出某个时间段的某种错误
-
介绍一下Reactor模式?
-
介绍一下select,poll,epoll
-
介绍一下异步io
-
你对阻塞非阻塞怎么理解?
-
了解惊群效应吗?
-
了解事务吗?说一下事务的四个性质
-
介绍一下redis的数据结构
-
如果用redis实现一个计数器你会怎么实现
-
了解分布式事务吗?
-
如果你设计一个扫码支付业务怎么实现,付款二维码中要包括什么信息?
-
如何防止付款二维码被多次重复使用?
-
了解面向对象吗?
-
手撕一个工厂模式,例如汽车工厂产轿车客车
-
如果需要对汽车厂商进行区分,你怎么做?如果加个参数的话,怎么判断你是用一个参数区分汽车厂商,还是新增一个类?
-
说一下你的优点和缺点
-
喜欢做业务还是做底层?
-
接受转Java吗?
-
喜欢分工还是合作?如果分工的话,体现不出你的价值,你会怎么体现你的价值?
-
如果压力很大的时候你会怎么办?
-
最近在学什么?
-
第一志愿城市?接受调剂到北京吗?实习接受吗?正式工作接受吗?
-
有什么要问我的
4.24 网易互娱 一面 55min
-
自我介绍
-
科研相关问题
-
C++的多态性
-
(说了半天重载之后)打断,C++的虚函数机制
-
虚函数怎么实现运行期多态的
-
深拷贝和浅拷贝
-
一个空类编译器会自动给创建什么函数
-
一个只有默认构造函数的类会自动创建什么函数
-
一个有非虚成员函数,没有成员变量的类,sizeof的结果
-
一个有非虚成员函数,一个bool,一个short的类, sizeof的结果
-
一个有虚成员函数,一个bool,一个short的类,sizeof的结果
-
一个有虚成员函数,一个bool,一个short,一个int的类,sizeof的结果
-
虚函数表是编译期生成的还是运行期生成的
-
int 和static int有什么区别?runtime时候在内存的分布中有什么区别?
-
内存区域的分布,内存区域和elf文件区域有什么区别?
-
符号表是用来放什么的?
-
手撕,反转链表
-
说思路,N个数中找前K大的数,最好情况下的复杂度?
-
说思路,如果这个N非常大呢?20G的N,2G内存,K=100
-
如果多台机器,能不能优化?
-
每个机器都有个堆,最后合并的时候能不能优化?比如每个机器堆的大小是20,K=10
-
知道DNS协议吗,为什么需要DNS?DNS需要每次都询问根域名服务器吗,可以优化吗?
-
有什么需要问我的
4.25 百度一面 44min
-
自我介绍
-
项目随便口胡了些
-
介绍一下数据结构中的栈和对列
-
手撕代码,两个栈实现一个队列
-
手写sql,一个表有学生,成绩两列,查找成绩前三名的学生
-
手写sql,一个表有学生,性别,成绩三列,统计男生成绩大于等于90的人数和女生成绩大于等于90的人数
-
const关键字的作用
-
struct和class的区别
-
static关键字的区别
-
介绍一下C++类中,成员访问描述符(public,private,protected)
-
你有什么需要问我的
4.25 百度二面 60min
-
自我介绍
-
口述一下快速排序的思想
-
说一下进程、线程、协程
-
说一下多进程、多线程、多协程的使用场景
-
介绍一下进程间通信
-
介绍一下linux查找文件的命令
-
介绍一下linux匹配字符串的命令
-
写linux命令:终止指定名称前缀的一组进程,例如process_1,process_2,process_3
-
介绍一下linux文件系统中的硬链接和软链接
-
struct和class的区别
-
C++主要是值语义还是引用语义
-
值语义和引用语义的特点
-
浅拷贝和深拷贝的区别
-
指针和引用的区别
-
接触过数据库吗,redis里面实现了什么数据结构
-
介绍一下redis的持久化方式
-
智力题,25批马5个赛道,几次能选出前三的马
-
你有什么需要问我的
4.25 百度三面 40min
聊人生比较多