
通信
雪落凡尘zz
这个作者很懒,什么都没留下…
展开
-
进程和线程
进程和线程的区别 (1)线程在进程下行进(单纯的车厢无法运行) (2)一个进程可以包含多个线程(一辆火车可以有多个车厢) (3)不同进程间数据很难共享(一辆火车上的乘客很难换到另外一辆火车,比如站点换乘) (4)同一进程下不同线程间数据很易共享(A车厢换到B车厢很容易) (5)进程要比线程消耗更多的计算机资源(采用多列火车相比多个车厢更耗资源) (6)进程间不会相互影响,一个线程挂掉将导致整个进程挂掉(一列火车不会影响到另外一列火车,但是如果一列火车上中间的一节车厢着火了,将影响到所有车厢) (7)进程可以原创 2020-08-15 20:16:11 · 167 阅读 · 0 评论 -
HTTP状态码
常见: 200 - 请求成功 301 - 资源(网页等)被永久转移到其它URL 404 - 请求的资源(网页等)不存在 500 - 内部服务器错误原创 2020-07-19 19:39:19 · 98 阅读 · 0 评论 -
http和https相关
http特点: 1.无状态:协议对客户端没有状态存储,对事物处理没有“记忆”能力,比如访问一个网站需要反复进行登录操作 2.无连接:HTTP/1.1之前,由于无状态特点,每次请求需要通过TCP三次握手四次挥手,和服务器重新建立连接。比如某个客户机在短时间多次请求同一个资源,服务器并不能区别是否已经响应过用户的请求,所以每次需要重新响应请求,需要耗费不必要的时间和流量。 3.通信使用明文、请求和响应不会对通信方进行确认、无法保护数据的完整性 https (1)首先客户端通过URL访问服务器建立SSL连接。 (原创 2020-07-28 22:53:16 · 206 阅读 · 0 评论 -
TCP相关
TCP三次握手 第一次握手:客户端要向服务端发起连接请求,客户端SYN标志位(1)和seq序列号(100)。 第二次握手:服务端收到报文后给客户端回复一段报文,回复报文包含SYN和ACK标志(也就是SYN=1,ACK=1)、序列号seq=300、确认号ack=101(客户端发过来的序列号+1)。 第三次握手:客户端收到服务端的回复,报文包含ACK标志位(ACK=1)、ack=301(服务端序列号+1)、seq=101(第一次握手时发送报文是占据一个序列号的,当服务端收到报文后发现ACK=1并且ack=301原创 2020-07-27 21:45:38 · 183 阅读 · 0 评论 -
进程和线程
联系: 线程是进程的一部分,一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。 区别: 进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位 (1)在开销方面:每个进程都有独立的代码和数据空间(程序上下文),程序之间的切换会有较大的开销;线程可以看做轻量级的进程,同一类线程共享代码和数据空间,每个线程都有自己独立的运行栈和程序计数器(PC),线程之间切换的开销小。 (2)在操作系统中能同时运行多个进程(程序);而在同一个进程(程序)中有多个线程同时执行(通过CPU调度,在每原创 2020-07-27 21:00:53 · 154 阅读 · 0 评论 -
域名解析过程
1.客户机提出域名解bai析请求du,并将该请求发送给本地的域名服务器。 2.当本zhi地的域名服务器dao收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。 3.如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。 4.本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。 5.重复原创 2020-07-26 21:32:08 · 112 阅读 · 0 评论 -
GET和POST的区别
get参数通过url传递,post放在request body中。 get请求在url中传递的参数是有长度限制的,而post没有。 get比post更不安全,因为参数直接暴露在url中,所以不能用来传递敏感信息。 get请求参数会被完整保留在浏览历史记录里,而post中的参数不会被保留。 GET和POST本质上就是TCP链接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。 GET产生一个TCP数据包;POST产生两个TCP数据包。 ...原创 2020-07-19 21:36:24 · 117 阅读 · 0 评论