# 一、前言
我不知道是腾讯这边比较侧重对于全面性人才的培养,还是这一次只是单纯的 KPI 面,我是第一次遇见一个 专门问后端问题的前端面试 。
当然也不排除我简历上写的 熟悉 Node.js 引起了面试官的注意的可能。
总体来说面试体验比较好,遇到没有了解过的问题我也直接就说不知道,不耽误面试的时间。
面试官也比较和蔼,也不会对我太过于刁难,问的问题也都是浅尝辄止,算是对考生比较友好吧。
这一次也是了解到了挺多的新概念,算是比较有收获的一场面试。
# 二、题目列表
-
自我介绍
-
你简历上写的都是前端相关的东西是吗? 那后端相关的东西有接触过吗?
我直言不讳,因为有几次比赛项目都是我一个人担任的全栈开发,我想着可能这也算是一个加分项,于是我说接触过。
-
那你有接触过数据库相关的东西吗?
既然都是做后端了,那肯定有接触数据库,于是我就说有,并且根据数据库的分类讲了几种我用过的。
-
那么你能够讲一下 MySQL、MongoDB、Redis 三者的应用场景分别有哪些吗?
我就按照我之前用过的一些场景稍微列举了一下,也不知道是不是正确的。
-
你刚刚说 Redis 主要是用来做缓存,那么后台还有没有别的方法可以去对数据进行缓存的操作?
-
Redis 数据是存在哪里的?如果数据量一大会不会有问题?如何解决数据量过大的问题?
-
Redis 你目前用的是什么样的服务?是自己搭建的还是云服务?
-
我看你的简历上有个涉及到权限管理的项目,可以讲一下这个项目权限设计逻辑是什么吗?
-
用户如果绕过了你前端的一个权限限制,直接伪造请求调用接口进行一些跨权限的操作,后端是怎么进行处理的?
-
你们这个项目用的是 HTTP 还是 HTTPS?请描述一下 HTTPS 的鉴定流程。HTTPS 链接建立的速度和 HTTP 相比如何?除了因为加密损耗的时间,还有其他因素使得 HTTPS 比 HTTP 更慢吗?
-
移动端 H5 页面和 PC 端 H5 页面的制作有什么区别或者是难点?
-
讲一下 Vue3 当中的动态组件机制。
-
讲一下浏览器资源传输方面的优化手段。
-
讲一下强缓存、协商缓存。对于协商缓存,服务器怎么去判断资源是否有被修改过?Last-Modified 这个字段有什么问题吗?为什么会有 ETag 这个东西?ETag 和 Last-Modified 两个字段哪个优先级更高?
-
反问环节。
# 三、后记
没有考算法题,整场面试面试官给我的印象就是雷厉风行,基本我回答了问题后立马给出反问、反馈,并且对于数据库相关的知识和我讨论了好久,收获还是很大的,留下了一堆的疑问待去解决。
不过目前似乎已经没有后续了,原本进度是初试,刚才查了一下又退回成刚完成测评的程度了(笑)。