【字节跳动】——后端研发Java 一面 凉经
时间:3月19日 下午2:00
1.自我介绍
2.从浏览器输入一个URL到返回响应的完整过程
3.网络带宽网速计算,10m带宽的实际下载速度
4.tcp与udp的区别概述
5.tcp的三次握手与四次挥手的过程及其原因
6.DNS解析原理,使用的底层协议
7.网络情况良好的情况下,分布式项目的rpc远程调用使用的是tcp还是udp?此时tcp性能更加,为什么
8.udp如何做到可靠传输
9.tcp的拥塞控制
10.http使用的是tcp还是udp
11.https与http的区别,https是如何做到安全性的
12.https是否可以抓包?如果能,那么如何分析包中内容
13.get与post请求的区别,post的安全性体现在那里,是否可以发现他的请求内容
14.进程与线程的区别,为什么要有进程与线程的区分,协程
15.进程的上下文切换
16.进程的状态
17.线程通信的方式
18.socket编程,分为客户端和服务端分别说
19.jvm内存里的堆和栈的区别和特点,栈针
20.如何应对高并发
21.Redis如何实现分布式锁,及其原理
22.Redis如何实现缓存
23.当一条数据通过Redis和数据库都没有命中时你是如何处理的,如果它重复发过来你怎么处理
24.项目亮点概述
25.{编程}--写一个单例模式,懒汉加载
26{编程}--从100000000个无序浮点数中找到10000个最大的数,要求时间复杂度最低
27.Collections.sort()方法的时间复杂度是多少
--------------------------
部分解答参考:
#字节跳动校招抖音内推头条内推字节跳动内推##实习##面经##字节跳动##Java工程师#