ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

计算机网络面试题

2022-03-01 12:31:49  阅读:75  来源: 互联网

标签:面试题 缓存 浏览器 请求 计算机网络 token POST 连接


1、HTTPS和HTTP的区别主要区别:


        https协议需要到ca申请证书,一般免费证书较少,因而需要—定费用。
http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

2、一个搜索框输入URL后按回车,发生了什么?
        浏览器查找域名的IP地址,查找途径有︰浏览器缓存,系统缓存,DNS缓存,DNS服务器。        http默认是80端口,https默认是443
        浏览器给web服务器发送—个HTTP请求
        服务器“处理”请求,可能是相应JSON也可能是模板语言会涉及模板渲染比如JSP服务器发回一个HTML响应
        浏览器开始显示HTML

3、get post请求区别

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

规范区别:

Get请求安全、幂等
.( 1)所谓安全意味着该操作用于获取信息而不是修改信息.换句话说,GET请求一股不应该产生副作用,也就是说,它仅仅是获取资源信息,就像数据库查询一样,不会修改、增加数据,不影响资源的状态
(2)所谓幂等意味着对同一个URL的多个请求应该返回相同的结果
2、根据HTTP规范,POST表示可能修改服务器上的资源的请求,比如一个新闻网站,读者对新闻资源发表的评论应该通过POST实现,因为在评论提交之后站点的资源已经不同了,或者说是资源被修改了
另外还有很重要的一点,从浏览器发起一次HTTP请求:
1、一些静态资源比如.css文件、js文件是很少发生变化的,让这些文件放在浏览器缓存里面,请求的时候从浏览器缓存里面拿这些资源而不去服务器上拿,可以有效地减轻服务端的压力,加快浏览器的访问速度。

而只有GET方式才能从缓存中存、取资源,POST方式则不可以。 而只有Get方式才能从缓存中存、取资源,POST方式则不可以。

TCP区别:
GET产生一个TCP数据包;POST产生两个TCP数据包

4、dns 用的什么协议
域名系统(英文:Domain Name System )是作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用UDP端口53。DNS做域名解析用的udp(给客户端发送ip ),做区域传输用tcp(更新ip域名)

5、token使用
JWT ( Json Web Token )(更复杂的token xxx.XXXX.xXXx )token工作流程:
1客户端使用账户密码请求登录接口
2登录成功后返回JWT(token, token可以存在浏览器缓存里,我们原来有个vue的项目就是vuex的state状态里,this.$store.state.token)
3客户端再次请求其他接口时带上JWT(token),和服务器session里的token对比4服务端接收到JWT后验证签名的有效性

6、长连接和短连接的区别
http的长链接短链接实际是tcp的长连接和短连接。
长连接意味着进行一次数据传输后,不关闭连接,长期保持连通状态。如果两个应用程序之间有新的数据需要传输,则直接复用这个连接,无需再建立一个新的连接。它的优势是在多次通信中可以省去连接建立和关闭连接的开销,并且从总体上来看,进行多次数据传输的总耗时更少。缺点是需要花费额外的精力来保持这个连接一直是可用的,因为网络抖动、服务器故障等都会导致这个连接不可用,甚至是由于防火墙的原因。所以,一般我们会通过下面这几种方式来做“保活”工作,确保连接在被使用的时候是可用状态:
1.利用TCP自身的保活(Keepalive )机制来实现,保活机制会定时发送探测报文来识别对方是否可达。一般的默认定时间隔是2小时
2.上层应用主动的定时发送一个小数据包作为“心跳”,探测是否能成功送达到另外一端。保活功能大多数情况下用手服务端探测客户端的场景,一旦识别客户端不可达,则断开连接,缓解服务端压力。
短连接意味着每一次的数据传输都需要建立一个新的连接,用完再马上关闭它。下次再用的时候重新建立一个新的连接,如此反复。它的优势是由于每次使用的连接都是新建的,所以基本上只要能够建立连接,数据就大概率能送达到对方。并且哪怕这次传输出现异常也不用担心影响后续新的数据传输,因为届时又是一个新的连接。缺点是每个连接都需要经过三次握手和四次握手的过程,耗时大大增加。另外,短连接还有一个致命的缺点。一台计算机最多只能开启65535个端口,如果现在两个进程之间需要通信,作为服务端的IP和端口必然是固定的,因此单个客户端理论上最多只能与服务端同时建立65535不socket连接。如果除去操作系统和其它进程所占用的端口,实际还会更少。所以,一旦使用不当,在很短的时间内建立了大量连接,端口很容易被占用完。这不但会导致自身无法正常工作,述会影响到同一台计算机上的其它进程。

标签:面试题,缓存,浏览器,请求,计算机网络,token,POST,连接
来源: https://blog.csdn.net/Zhongtongyi/article/details/123202359

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有