拥有面试标签的文章

HTTP状态码

1开头的http状态码表示临时响应并需要请求者继续执行操作的状态代码。100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。2开头的http状态码表示请求成功200 成功处理了请求,一般情况下都是返回此状态码; 20...
阅读全文

TCP如何实现拥塞控制和流量控制

定义TCP作为面向连接的提供全双工可靠服务协议,具有差错控制、拥塞控制和流量控制等功能。此处所谓的拥塞控制和流量控制,就是将发送端发送能力、接收端接收信息的能力以及当前的网络环境参与考虑,在网络拥塞情况严重或者接收端接收能力有限的情况下,减缓或暂停消息发送,当情况改善时,增强消息发送能力,加上超时/丢失重发的机制,共同提供可靠传输。流量控制流量控制以动态调整发送空间大小(滑动窗口)...
阅读全文

TCP和UDP的区别

TCP与UDP基本区别 1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少; 3.UDP程序结构较简单 4.流模式(TCP)与数据报模式(UDP); 5.TCP保证数据正确性,UDP可能丢包 6.TCP保证数据顺序,UDP不保证   UDP应用场景: 1.面向数据报方式 2.网络数据大多为短消息 3.拥有大量Clie...
阅读全文

总结get和post区别

get参数通过url传递,post放在request body中。get请求在url中传递的参数是有长度限制的,而post没有。get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息。get请求只能进行url编码,而post支持多种编码方式get请求会浏览器主动cache,而post支持多种编码方式。get请求参数会被完整保留在浏览历...
阅读全文

linux几种创建进程的方法

在Linux中主要提供了fork、vfork、clone三个进程创建方法。 在linux源码中这三个调用的执行过程是执行fork(),vfork(),clone()时,通过一个系统调用表映射到sys_fork(),sys_vfork(),sys_clone(),再在这三个函数中去调用do_fork()去做具体的创建进程工作。 fork fork创建一个进程时,子进程只是完全...
阅读全文

unix进程间的通信方式

1)管道(Pipe):管道可用于具有亲缘关系进程间的通信,允许一个进程和另一个与它有共同祖先的进程之间进行通信。(2)命名管道(named pipe):命名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信。命名管道在文件系统中有对应的文件名。命名管道通过命令mkfifo或系统调用mkfifo来创建。(3)信号(Signal):信号是比较复杂的通信...
阅读全文

进程、挂起、线程、死锁、中断、陷入······

进程:程序的一次执行过程。进程是动态的,而程序是静态的。进程有五种状态,三种基本状态,四种特征,是系统资源分配和调度的独立单位。程序段,相关数据段,进程控制块(存了四种信息)构成了进程实体。挂起为了系统和用户观察和分析进程的需要,还需引用挂起操作:如果进程正在执行,它将暂停执行,暂不接受调度。与挂起操作对应的是激活操作。挂起的引入有四种原因。线程:引入原因:提高资源利用率和系统...
阅读全文

互联网测试与传统测试的不同

1.测试周期较短,产品功能更新上线较快测试完了一般直接就发布了,所以不像传统的软件有那么长的测试周期,包括internal beta,external beta等过程,而且我了解到的情况,很多基于web的互联网产品平均一天有多个发布,可大可小。所以发布可能就成了测试人员的工作,当然有相关的系统的支持。 这里还需要考虑的问题是常见的基于各种条件的灰度发布,先让部分用户用起来。发布完了之后还要做现...
阅读全文

TCP三次握手与四次挥手过程

首先,客户端与服务器均处于未连接状态,并且是客户端主动向服务器请求建立连接:客户端将报文段中的SYN=1,并选择一个seq=x,(即该请求报文的序号为x) 将这个报文发送到服务器。此时,客户端进入同步已发送状态(SYNSEND).SYN报文段不能携带数据,但是要消耗掉一个序号。服务器收到请求报文后,若同意建立连接,则回复报文中,SYN=1,ACK=1,并选择一个seq = y,且...
阅读全文