失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 腾讯游戏客户端暑期实习生面经

腾讯游戏客户端暑期实习生面经

时间:2019-12-12 18:59:14

相关推荐

腾讯游戏客户端暑期实习生面经

时间

.3.12网站投的简历,第二天就直接收到初面邀请邮件,然后非常快速的,一面、二面、hr面,于.3.24收到深圳腾讯总部打来的电话,面试成功!

面试方式

新冠疫情影响,三次均使用腾讯会议远程面试,每次大概30分钟

投递岗位

游戏客户端开发暑期实习生(但奇怪的是,面我的人问我的都是服务器网络相关问题,可能是因为我简历里核心项目是C++服务器项目,hr灵活组排?)

一面

主要针对我的C++Lua分布式帧同步游戏服务器demo进行了大量提问

简述项目架构如何做到分布式?如何实现帧同步?帧同步网络延迟的原因有哪些?服务器如果出现宕机你怎么处理?网关宕机呢?协议版本更新了,但只有一台服务器上可以处理最新版本协议,网管如何转发?

【在CmdPackage中加入version字段,网关综合考虑version和serviceType进行转发】protobuf的缺点——GC消耗严重,推荐使用flatbuffer

二面

帧同步为什么使用udp而不是tcp?

【我答了tcp需要对方确认收到、具有拥塞控制,丢失重传,逻辑复杂,消耗高,但面试官说这都不是重点,希望有大佬可以评论区指点一二】帧同步udp实现可靠传输的逻辑放在网络层还是逻辑层,为什么?

【我说我的架构里是放在逻辑层,他说没错,但我不知道原因,希望有大佬可以评论区指点一二】帧同步如何检测和防止玩家开挂?

【每隔一段时间,客户端将关键数据发往服务器验证,另一种思路是在帧同部的同时,内嵌一种更新比较慢的状态同步,用于服务器验证】你是如何处理玩家掉线重连?

【我说快照+服务器冗余】数据库索引知道么

【不知道~】Redis用过哪些功能?

【用作mysql的缓存,主要使用其键值对功能】Tcp协议启动的时候做了哪些操作?算法题:如何打乱一个数组现有以下代码

vector<int> a;a.push_back(100);vector<int> b;memcpy(&b,&a,sizeof(a));

问:

0、a在哪里?

【在栈上】

1、100在哪里?

【在堆中】

2、前两行执行结束后,内存上发生哪些变化?

【在栈上定义了一个变量a,在堆上开辟了一块空间,里面放着一个数据100】

3、执行过后这四行代码,程序报错,可能的原因有哪些?

1、a中指针指向的堆内存重复释放;

2、b原本指向的对内存内存泄漏;

3、如果a中数据被释放,使用b的时候可能访问到垃圾数据

HR面

个人未来规划大学期间履历做过的项目有哪些,说说你最得意的项目说说你的学习方法说说你遇到的难题,都是如何克服的

体会

腾讯效率真高!12天,从投简历到offer call数据库是个好东西,希望我也熟悉网络编程基础一定要好分布式现在还只是皮毛,应该有更完善的宕机处理办法帧同步可以提升的地方还有很多

如果觉得《腾讯游戏客户端暑期实习生面经》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。