字节跳动 后端研发实习生 面试题目总结(转载) (5)

最直接的区别,GET请求的参数是放在URL里的,POST请求参数是放在请求body里的;GET请求的URL传参有长度限制,而POST请求没有长度限制;GET请求的参数只能是ASCII码,所以中文需要URL编码,而POST请求传参没有这个限制;

GET和POST本质上两者没有任何区别。他们都是HTTP协议中的请求方法。底层实现都是基于TCP/IP协议。

GET 向服务器获取指定资源 POST 向服务器提交数据,数据放在请求体里

tcp接收窗口和拥塞窗口

什么时候会向对端传窗口的大小  TCP协议

连续发送两次http请求,会得到两次结果吗?可能第二次比第一次快吗?

HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。 IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠地传递数据包,使得网络上接收端收到发送端所发出的所有包,并且顺序与发送顺序一致。TCP协议是可靠的、面向连接的。

HTTP协议是无状态的,指的是协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。也就是说,打开一个服务器上的网页和上一次打开这个服务器上的网页之间没有任何联系。HTTP是一个无状态的面向连接的协议,无状态不代表HTTP不能保持TCP连接,更不能代表HTTP使用的是UDP协议(无连接)。

短连接。也就是说,客户端和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。

在使用长连接的情况下,当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,客户端再次访问这个服务器时,会继续使用这一条已经建立的连接。Keep-Alive不会永久保持连接,它有一个保持时间,可以在不同的服务器软件(如Apache)中设定这个时间。实现长连接需要客户端和服务端都支持长连接。

服务器状态502 503 504什么问题,怎么排查

502 网关错误

504 网关超时

503 服务器目前无法使用(由于超载或停机维护)

查看日志,使用ulimit查看系统打开文件限制,负载均衡

linuxIO模型,区别在哪

线程独立拥有哪些资源

nginx怎么处理请求

http缓存机制

长连接

Redis

interrupt和signal的区别

操作系统在interrupt中发挥什么作用

重传ack的时机只有ack超时吗?

慢启动:最初的TCP在连接建立成功后会向网络中发送大量的数据包,这样很容易导致网络中路由器缓存空间耗尽,从而发生拥塞。因此新建立的连接不能够一开始就大量发送数据包,而只能根据网络情况逐步增加每次发送的数据量,以避免上述现象的发生。具体来说,当新建连接时,cwnd初始化为1个最大报文段(MSS)大小,发送端开始按照拥塞窗口大小发送数据,每当有一个报文段被确认,cwnd就增加1个MSS大小。这样cwnd的值就随着网络往返时间(Round Trip Time,RTT)呈指数级增长,事实上,慢启动的速度一点也不慢,只是它的起点比较低一点而已。

拥塞避免:TCP使用了一个叫慢启动门限(ssthresh)的变量,当cwnd超过该值后,慢启动过程结束,进入拥塞避免阶段。对于大多数TCP实现来说,ssthresh的值是65536(同样以字节计算)。拥塞避免的主要思想是加法增大,也就是cwnd的值不再指数级往上升,开始加法增加。

快速重传:那就是收到3个相同的ACK。TCP在收到乱序到达包时就会立即发送ACK,TCP利用3个相同的ACK来判定数据包的丢失,此时进行快速重传,快速重传做的事情有:1.把ssthresh设置为cwnd的一半

2.把cwnd再设置为ssthresh的值(具体实现有些为ssthresh+3)

3.重新进入拥塞避免阶段。

拥塞窗口要不要把自己的大小发给接收方,意义何在?(这个问题一面也问了,没有答出来)

git merge与rebase的区别

如果你想要一个干净的,没有merge commit的线性历史树,那么你应该选择git rebase

如果你想保留完整的历史记录,并且想要避免重写commit history的风险,你应该选择使用git merge,产生merge commit

STL内存分配

http2的特点

多路复用和长连接什么意思,怎么设置长连接

进程状态都有哪些,怎么转换

字节跳动 后端研发实习生 面试题目总结(转载)

调度算法都有哪些,调度的时机是什么

算法:先来先服务,短作业优先,高优先权优先(响应时间/要求服务时间),时间片轮转,多级反馈队列

调度时机:进程执行完毕,阻塞,自己的时间片用完,发生中断

http的长连接和短连接

路由器是哪一层的,有什么功能,路由寻址,路由表存了什么

ping协议会发生什么(ICMP)用于在IP主机、路由器之间传递控制消息

(1) A主机构建一个ICMP格式的数据包;

(2) ICMP协议+B主机的IP地址 交给IP协议;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzpfsz.html