字节8.25前端一面面经 8.30已过

面试体验极佳,面试官声音很温柔,还给我讲了很多之前没想到的东西。

自我介绍。
你能给我讲一下什么是微服务吗?--将一个系统按业务划分成多个子系统,每个子系统都是完整的,可独立运行的,子系统间的交互可通过HTTP协议进行通信,也可以采用消息队列来通信,然后说了一下在实习方面自己对微服务的见解。
你刚才说的是编码的微服务,有没有考虑过在部署上的微服务是什么呢?本人没有部署过,这个问题是面试官讲了很多,我加了一些自己的想法和理解进去。
那你说一下微服务的优缺点有什么呢?简化部署,可扩展,错误隔离,缺点就是复杂度高,运营成本高。
说一下微服务的一个实际问题,A调用B,B调用C,最后C调用A,类似死锁但是微服务中是资源需求高,这个怎么解决?个人出发优化微服务通信方式,讲了讲RPC,REST,Message,讲了讲Message应该是最优解,解耦什么的挺好,除了单独一个消息服务,然后面试官说了说,请求的时候带一个日志标识,后续在上线之前也可以有一个流程测试,这部分比较深聊了一会。
然后面试官觉得聊的有点难了,换了一些简单的问题。
URL到页面渲染,我用自己的想法叙述了一面URL解析DNS解析TCP请求到DOM树构建。
然后提了一下JS的异步问题,就是eventloop,我以为是要说promise,都准备手写promise代码了。讲了一下事件循环,讲了一下HTTP中eventloop的机制,也就是任务队列和主线程在同步异步时候的运行问题,后面又把任务队列分成了微任务队列和宏任务队列讲了讲,这里我弄错了一个问题,任务队列是先进先出的,我说成了先进后出,后面面试官提醒我我改了回来。这块深挖了一下,聊了一些,记不清了。
异步的话当然不能忘了Promise,给了一个经典的输出序列问题,emmm,然后我上来就搞错了,忘记了是promise.then是异步,在创建promise函数的时候是同步的,里面还涉及了resolve和reject,讲了promise的状态是不能变化的,所以定下状态之后的promise是会运行但是不会进入error。这块答得不太好,因为很久没看这种了。
最后写了一个算法题,第三大的数,时间复杂度不要求和要求On,刚开始不要求我想的是sort之后选择第三大,要求之后发现这其实就是一个返回最大数的问题,直接找就行,讲了一下思路。

总面试时长一小时五分,比我想的45分钟长了20分钟
#字节面试##面经#
全部评论
大佬你好,没看太懂“要求之后发现这其实就是一个返回最大数的问题”这个为什么是返回最大数,可以请大佬解析一下吗?
点赞 回复 分享
发布于 2022-09-20 17:35 广东
这是什么岗位啊 服务端+node?
点赞 回复 分享
发布于 2022-09-16 19:07 广东
请问是社招还是校招,投了之后多久一面的
点赞 回复 分享
发布于 2022-09-05 14:02 河南
第三大的那个可以用线段树做吗
点赞 回复 分享
发布于 2022-08-29 12:27 湖北
请问事什么部门
点赞 回复 分享
发布于 2022-08-25 16:23 湖北

相关推荐

一表renzha:你点进去没打招呼他也会有提示的,之前我点进美的,还没打招呼,他马上给我发了不太合适哦
点赞 评论 收藏
分享
ResourceUtilization:你是我见过最美的牛客女孩
点赞 评论 收藏
分享
05-20 13:59
门头沟学院 Java
米黑子米黑子:你这个成绩不争取下保研?
点赞 评论 收藏
分享
面试了几家,全程问项目,八股一点都不问,可惜准备了这么久
独角仙梦境:现在感觉问八股像是中场休息一样的,问几个八股放松一下再上强度
点赞 评论 收藏
分享
评论
5
21
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务