字节一面总结
1. 自我介绍
2. 项目深挖
• 一共开了几个进程?
• “你用的是微服务的架构,那多模块间的通信是用的什么,具体的HTTP地址是怎么写的”
○ “HTTP请求”(地址怎么写没太理解意思)
• 还有几个想不起来了
3. 八股文
• 介绍一下网络模型
○ 说了TCP/IP4层和OSI的7层,4层中每一层的作用,网络层和传输层的协议
• HTTP在网络模型的那一层?
○ 脑子短路了,说在传输层(实际在应用层)
• TCP和UDP的区别?
○ TCP是面向连接的,有可靠性和有序性,功能有拥塞控制和流量控制,UDP没有这些功能,但传输速度快
• 适用的场景?
○ TCP适合邮箱等数据可靠的场景、UDP适合游戏等要求速度快的场景
• 如果让你设计一个聊天系统,你会采用哪个?
○ 答的TCP(应该是TCP和UDP混合)
• 如果用UDP会出现什么样的情况?
○ 接受不到数据、乱序?
• 进程和线程的区别?(实际上有七个角度可以说:资源、调度、内存、开销、通信、崩溃、场景)
○ 进程包含线程,进程有自己独立的内存空间(栈、堆、数据段等)、线程只有栈空间(其实还有一个寄存器)
○ 线程间通信直接在内存共享通信,进程需要通过IPC管道进行通信
• 进程间如何通信?
○ 说了有个共享区(是IPC的其中一个)
• 数据库的数据存储结构是怎么样的
○ InnoDB和mys,B+树和B树,B+树的数据存储在叶子节点、B数存储在所有节点(太片面了)
• 线程池的核心参数有哪些?
○ 核心线程数、最大线程数、队列、拒绝策略
• 如果是B+树那查询的整个流程是什么
○ 先通过根节点确定子节点,然后继续找,直到叶子节点
• 为什么B+树是三层?
○ 没回答上来,说的三层已经可以存储百万级的数据满足一般需求
• 哈希表了解吗?请解释一个java中哈希的操作
○ HashMap的put方法,先是hashCode方法、然后map中的hash、按位与、存入元素,引出哈希冲突和扩容机制,链表和红黑树的转换(低于6转回链表,超过8转成红黑树)、1.8以前是头插法、1.8以后是尾插法等等
• 为什么是按位与?他是做什么的?
○ 计算hash桶的位置,存入数据的依据
• 方法异常的处理方法?如何优雅的处理?
○ Try-catch方法
• 如何在异常的时候释放资源?
○ 手动释放和return 方法结束自动释放局部变量(错误,应该是try-with-resources、finally)
• long类型所占的字节大小,范围是多少 ?
○ 8字节、-2的63次幂到正的-1(这里我答错了)
• 其他的基本类型都有什么呢?
○ 一共八个,byte、char、boolean、short等
4. 算法:数组中求严格递增的子序列的长度
• 在letcode上做过,很快就做出来了,解释代码 二分查找
5. 反问
• 总结:问的都了解但说的不够细致,项目经验不够多,感觉希望不大。
#牛客AI配图神器##面试##字节#
2. 项目深挖
• 一共开了几个进程?
• “你用的是微服务的架构,那多模块间的通信是用的什么,具体的HTTP地址是怎么写的”
○ “HTTP请求”(地址怎么写没太理解意思)
• 还有几个想不起来了
3. 八股文
• 介绍一下网络模型
○ 说了TCP/IP4层和OSI的7层,4层中每一层的作用,网络层和传输层的协议
• HTTP在网络模型的那一层?
○ 脑子短路了,说在传输层(实际在应用层)
• TCP和UDP的区别?
○ TCP是面向连接的,有可靠性和有序性,功能有拥塞控制和流量控制,UDP没有这些功能,但传输速度快
• 适用的场景?
○ TCP适合邮箱等数据可靠的场景、UDP适合游戏等要求速度快的场景
• 如果让你设计一个聊天系统,你会采用哪个?
○ 答的TCP(应该是TCP和UDP混合)
• 如果用UDP会出现什么样的情况?
○ 接受不到数据、乱序?
• 进程和线程的区别?(实际上有七个角度可以说:资源、调度、内存、开销、通信、崩溃、场景)
○ 进程包含线程,进程有自己独立的内存空间(栈、堆、数据段等)、线程只有栈空间(其实还有一个寄存器)
○ 线程间通信直接在内存共享通信,进程需要通过IPC管道进行通信
• 进程间如何通信?
○ 说了有个共享区(是IPC的其中一个)
• 数据库的数据存储结构是怎么样的
○ InnoDB和mys,B+树和B树,B+树的数据存储在叶子节点、B数存储在所有节点(太片面了)
• 线程池的核心参数有哪些?
○ 核心线程数、最大线程数、队列、拒绝策略
• 如果是B+树那查询的整个流程是什么
○ 先通过根节点确定子节点,然后继续找,直到叶子节点
• 为什么B+树是三层?
○ 没回答上来,说的三层已经可以存储百万级的数据满足一般需求
• 哈希表了解吗?请解释一个java中哈希的操作
○ HashMap的put方法,先是hashCode方法、然后map中的hash、按位与、存入元素,引出哈希冲突和扩容机制,链表和红黑树的转换(低于6转回链表,超过8转成红黑树)、1.8以前是头插法、1.8以后是尾插法等等
• 为什么是按位与?他是做什么的?
○ 计算hash桶的位置,存入数据的依据
• 方法异常的处理方法?如何优雅的处理?
○ Try-catch方法
• 如何在异常的时候释放资源?
○ 手动释放和return 方法结束自动释放局部变量(错误,应该是try-with-resources、finally)
• long类型所占的字节大小,范围是多少 ?
○ 8字节、-2的63次幂到正的-1(这里我答错了)
• 其他的基本类型都有什么呢?
○ 一共八个,byte、char、boolean、short等
4. 算法:数组中求严格递增的子序列的长度
• 在letcode上做过,很快就做出来了,解释代码 二分查找
5. 反问
• 总结:问的都了解但说的不够细致,项目经验不够多,感觉希望不大。
#牛客AI配图神器##面试##字节#
全部评论
字节的hr问的是又杂又深,面完就直接流程结束了
请问是什么部门哇
相关推荐

点赞 评论 收藏
分享