字节日常实习一面

忘记录音了,记录比较模糊,被拷打了一个半小时,凉凉

时间/部门

2024/1/24
后端——商业化产品与技术

自我介绍

本硕西电
介绍了一下简历上写的三个项目

  • 跟着网上做的铁路购票系统
  • 自己手写的MQ
  • 服务外包竞赛项目

面试官提问

  1. RocketMQ 延时消息是怎么实现的?(针对第一个项目问的)
    我:使用 RocketMQ 的原因就是因为 RocketMQ 有一些内置的消息类型,延时消息就是其中一种。Kafka 里没有这个功能,所以这也是为什么没使用 Kafka。
    面试官:那你知道 RocketMQ 是怎么实现延时消息的吗?
    我:这个我目前还不太清楚,我下去看看。
  2. 你自己手写的 MQ 实现了延时消息和死信队列这些功能么?
    我:没有,我主要是模仿3.3版本之前的 Kafka,实现了消息持久化和主从选举。
  3. Kafka 新版本怎么实现主从选举的?
    (我答的 kraft)
  4. 消息队列怎么保证消费者的消息不丢失的?
    (我从 kafka 和 rocketMQ 两个消息队列怎么实现的来回答的)
  5. 消息队列怎么实现顺序消费的?
    我回答了 kafka 的两种方式和 rocketMQ 有内置的顺序消息类型
  6. Kafka 生产者同步发送、异步发送和发送后遗忘,异步发送也可以使消息有顺序性么?
    我没有想过这个问题,所以当时回答的使按理来说有可能会导致消息乱序,但是我猜kakfa做了相应的应对措施。(但事实上,Kafka 并没有做对应的措施,如果异步发送的话,发送到 broker 里就有可能是乱序的,那消费的时候也是乱序的)

手撕

  1. 约瑟夫环
    没做过,讲对了思路,但是最后空指针异常了,不想找bug了,就下一个题了。
  2. 给一个图书管理系统设计数据库表
    这个过程面试官一直在引导,体验很好。一开始说了基础的设计之后,面试官再加一些新的需求。
  3. 写 SQL 语句
    事先没想到会有这种,让我写一条 SQL 语句,在学生表、课程表(ID, TEACHER_ID, TEACHER_NAME, COURSE_ID, COURSE_NAME)、学生_课程表三个表中找出没选"XXX"老师课的学生。

其他

在手撕 2 之后,问了一些计算机网络的基础。

  1. 怎么用 UDP 实现 TCP?
  2. 在浏览器输入一个 URI,到页面渲染到你的浏览器上,这一段时间发生了什么?
  3. IP 是动态变化的,怎么根据 IP 找到你的电脑的?
全部评论
sql语句刷刷牛客或者力扣上的题,基本面试轻松拿捏
5 回复 分享
发布于 2024-02-02 02:44 陕西
ip动态变化是因为 你电脑不是固定ip可能是dnp由dnp服务端分配 根据ip找电脑上是ip找mac是arp吧 nat是内网到外网外网通过端口区别来传给内外电脑的 应该不是这个问题吧
1 回复 分享
发布于 2024-02-17 14:58 河北
约瑟夫环我电考研初试可能会考的,你应该是本科生吧
1 回复 分享
发布于 2024-02-02 02:43 陕西
IP 是动态变化的,怎么根据 IP 找到你的电脑的 这个问题是根据ARP协议吗
1 回复 分享
发布于 2024-01-30 16:56 江苏
西电✌🏻,舔一下
点赞 回复 分享
发布于 2024-03-23 20:50 浙江
需要的友友可以看看我首页,直接扫内推码投递,米哈游有大量岗位,可以咨询
点赞 回复 分享
发布于 2024-03-14 08:39 上海
想请问一下字节的面试邀请邮件上会不会写岗位名称呢
点赞 回复 分享
发布于 2024-02-27 09:22 广东
校友啊哈哈哈哈
点赞 回复 分享
发布于 2024-01-25 20:28 北京
m
点赞 回复 分享
发布于 2024-01-25 17:36 北京
mark
点赞 回复 分享
发布于 2024-01-24 21:52 陕西
咋还跟消息对列过不去了
点赞 回复 分享
发布于 2024-01-24 20:38 北京

相关推荐

背景:24届毕业,非科班,属于华为130所目标院校,考研gap一年,机考python,280分流程: 机考 - hr面 - 技术面两轮 - 主管面HR面:就简单问了一下考研情况、项目、期望薪资技术一面:首先进行自我介绍,随后手撕代码手撕完代码后,面试官问我写的代码里面一个变量为什么前面加下划线,加一个下划线和两个下划线有什么区别,由此很自然的开始八股文和项目问答。感觉问答的内容都是跟着简历中的项目走的,例如我的项目用到了服务器,面试官就问我用的服务器系统是不是Linux,然后问我是否知道Linux的内核态和用户态,它们怎么切换;聊到我的项目用到了MySQL数据库,于是问我对MySQL的了解、Python中有哪些MySQL接口、MySQL和MongoDB的区别。整体上感觉多数时间在聊项目,例如某个模块有什么用、为什么这么设计。问到的问题(多数是项目相关细节,纯八股文的问题不多,回忆如下):八股文相关的:Python变量名前加一个下划线和两个下划线有什么区别Python垃圾回收机制Python的多线程Python的GILMySQL的了解Python中有哪些MySQL接口MySQL和MongoDB的区别Linux内核态和用户态内核态用户态有哪几种切换方式技术二面首先进行自我介绍,其次问我简历中的项目,没有问任何八股文,最后手撕代码。(二面没问任何八股文,全是项目)主管面:问了项目+八股Python栈和堆的区别Python栈和堆的底层实现、在内存中的形态Python深复制和浅复制Python的可变与不可变Python线程与进程的区别Python多线程开发有什么需要注意的
查看18道真题和解析
点赞 评论 收藏
分享
评论
18
158
分享

创作者周榜

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