面经分享:字节跳动、腾讯后台开发岗

这篇博客分享了作者朋友在字节跳动和腾讯后台开发岗位的面试经历,涵盖了TCP/IP、网络编程、语言基础、数据库、缓存、算法、分布式系统等多个方面的技术问题。面试中涉及TCP三次握手、四次挥手、HTTP协议、MySQL查询优化、Redis数据结构、微服务架构、Kafka、Elasticsearch等知识点,强调面试前要扎实基础,熟悉项目并准备LeetCode题目。
摘要由CSDN通过智能技术生成

身边朋友跟我分享面试字节跳动和腾讯的经历,抽空整理成博文与大家分享一下。

1. 字节跳动
头条技术面共三面,之后是HR面,面试形式是 视频。时间均控制在1个小时。

1.1 第一面:
第一面主要考察基础,先简单自我介绍,以及介绍一下项目,然后开始考察基础。

1.1.1 TCP相关基础知识

  1. 问题1: 请详细描述三次握手和四次挥手的过程 要求熟悉三次握手和四次挥手的机制,要求画出状态图。
  2. 问题2: 四次挥手中TIME_WAIT状态存在的目的是什么?
    这个问题是画出四次挥手状态图,会引申问你。不排除还会问为什么四次挥手是四次不是二次等问题。最好是把相关问题均掌握。
  3. 问题3: TCP是通过什么机制保障可靠性的?
    从四个方面进行回答,ACK确认机制、超时重传、滑动窗口以及流量控制,深入的话要求详细讲出流量控制的机制。

1.1.2 语言的相关基础知识
字节跳动的技术栈是Go和Python,会问一下相关语言的基础。
问题1: 描述线程、进程以及协程的区别? 描述线程、进程以及协程的定义和区别,顺便描述Python语言中三者的使用。
问题2: GO语言中的协程与Python中的协程的区别? 主要讲解Go中GMP机制。

1.1.3 网络编程相关基础
1.问题1: 网络IO模型有哪些?
5种网络I/O模型,阻塞、非阻塞、I/O多路复用、信号驱动IO、异步I/O。从数据从I/O设备到内核态,内核态到进程用户态分别描述这5种的区别。
2.问题2: I/O多路复用中select/poll/epoll的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值