腾讯PCG后台开发,一面凉经
腾讯一面,
做完测评,第二天就给面了,一直以为要笔试完才会面,人生第一次面试给了鹅,只能说我太。。。。。。
一面67分钟 挂啦
1. 项目拷打
注册登录过程中如果被人攻击怎么办?,
回答登录过程采用了非对称加密,用户不发送密码过去,发送用户名,随机字符串,时间戳、
用户用自己的用户名+随机字符串+时间戳+密码 用MD5算法算完,得到一串换编码。
服务端受到用户名,随机字符串,时间戳、再拿出用户密码,也用MD5算法算,得到一串换编码,然后验证是否相等。 期间还会对时间戳验证(防止有人拿以前的编码)来验证。
这个项目是你自己一个人做的吗,有和其他人合作嘛?
我负责后端,师兄负责前端。他用的Qt,我是在虚拟机LInux下开发的,巴拉巴拉。
Redis在你项目里是怎么用的?
用作缓存,来提高响应速度,感觉不太满意。
看你说你用了连接池,讲讲
因为很多业务都会去访问mysql或redis,如果频繁的建立和销毁连接会导致性能损耗,所以会提前给出连接好的数据库管理对象,然后提供给各个业务,需要就来拿,用完就返还。过程中要上锁。
为什么没做微服务架构?
硬件设备没跟上。。。。 说白了没咋学过RPC NGINX
我看很多东西是你自己封装的,为什么不多用用别人成熟的组件?
想锻炼下自己关于面向对象的代码能力,顺便多熟悉熟悉相关知识点,封装epoll,封装mysql,封装socket,封装线程池等等。
我看你说你封装了epoll
聊聊select和epoll的区别吧
Epoll用的哪种触发机制? 用的默认的边缘触发机制,
问得太多了…
有待补充…
八股
INNODB和MyISAM的区别 基本的略过。。。这里说了一点MYISAM查询会略快,(因为MYISAM不支持行级锁和事务,更简单)。被怼了,背的八股,
INNODB索引的结构 老生常谈
B+和B的区别 老生常谈
有哪些索引?
聚簇非聚簇啥区别
Redis有哪些数据类型,
你存储用户信息用的什么类型
Redis的ZSET的底层是什么数据结构 只答了跳表,忘说Dict了。
http和https
TCP和UDP
还有些…..
有待补充….
还问了些专业相关的问题
本科研究生做了啥,咱非科班也只能说学过C++,然后其他是自学,剩下的回答了下自己的研究课题。
然后手撕
“hh:mm”代表一个时间,比如“05:24” 现在,时间可能被未知个“?”取代了,例如
“?5:24“ 0 ,1 两种可能性
”??:24“。 0-23 24种可能性
问有多少种合理的可能性
是一道回溯题,我用的分类讨论,因为感觉最多四个?,写着写着,发现分不完了,就慌了,因为是硕士阶段第一次面试。
后来考官提醒了,然后讲了讲思路。
因为时间太长了。。就只做了一道,估计是觉得我太菜了。
反问:
问面试官,他是负责什么的?
问了面试官,他是怎么考察人的
问了面试官,有啥建议给到, 说是项目要再打磨下,然后编码能力要继续加强
秒挂了。。。。。。。
缺乏经验,得学多点中间件,自己太菜了,害。。。。
明天很美好,继续加油吧。。。。多投多练。