字节一面总结

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配图神器##面试##字节#
全部评论
字节的hr问的是又杂又深,面完就直接流程结束了
1 回复 分享
发布于 04-02 00:33 浙江
请问是什么部门哇
点赞 回复 分享
发布于 04-05 12:06 辽宁

相关推荐

如题,本人现在研二,无实习无项目,本科读的能源,研究生跨考到了自动化,目前在学JAVA,从今年的三月份开始学习JAVA(听往届学长说这个时间点左右开始到秋招时间是合适的),目前截止到现在看完了黑马JAVA课程的基础,JavaSE,以及MySQL部分,学习到现在稍有吃力,感觉只能跟上视频里讲的demo。很多东西不太能理解,遇到类似的只能照着案例敲,稍微综合一点的完全找不到入手的思路。以上是我目前的状况,我现在的目标不是实习(因为深知自己能力不够卷不过)而是秋招,想要找到一份还算不错的工作,就算不是大厂也能接受,国企,中小企业也是可以的(不是那种工资五千干5W的死命压榨的这种公司),因为打算先入行积攒经验和技术等着跳槽或者转其他适合自己的岗位。我经常在想现在学的这么吃力是不是自己脑子不太好,好像自己除了做题,其他什么都做的一塌糊涂,我很多朋友羡慕的学历,但是我自己经常嘲弄自己除了试卷上的几道题什么都不会,也没有一个清晰的职业规划,就连跨考都是脑子一热就上了,现在课题课题不行,找工作要用的技术也不行,焦虑,行动起来也像只无头苍蝇。有时候在想去个学历厂算了,起码也算是真的用上了自己唯一的优势。亲爱的陌生人,也感谢你阅读了我这么多焦虑的碎碎念,我也想求助一下这里的佬们,针对我目前的学习困境能否给一点好的建议?如果真技术不过硬的话,在秋招找工作的时候应该将目标放到哪些企业和岗位?
点赞 评论 收藏
分享
评论
5
12
分享

创作者周榜

更多
牛客网
牛客企业服务