笔试知识点总结

笔试知识点总结

HTTP/2的优势

1.HTTP /2采用二进制格式传输数据,而HTTP/1.x采用文本格式传输数据。二进制格式在协议的解析和优化扩展上带来更多的优势和可能。

2.HTTP/2对消息头采用HPACK进行压缩传输,能够节省消息头占用的网络的流量。而HTTP/1.x每次请求都会携带大量冗余头信息,浪费了很多带宽资源。头压缩能够很好的解决这个问题。

3.多路复用,即所有的请求都是通过一个TCP连接并发完成的。

4.Server Push:服务端能够更快的把资源推送给客户端。

 

HTTP状态码:

100-199:用于指定客户端应相应的某些动作。

200-299:用于表示请求成功。

300-399:用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。

400-499:用于指出客户端的错误。

500-599:用于支持服务器错误。

100:Continue/继续;

101:Switching Protocols:转换协议

200:OK/正常

201:Create/已创建

202:Accepted/接受

203:Non-Authoritative Information/非官方信息

204:No Content/无内容

205:Reset Content/重置内容

206:Partial Content/局部内容

300:Multiple Choices/多重选择

301:Moved Permanently

302:Found/找到

303:See Other/参见其他信息

304:Not Modified/为修正

305:Use Proxy/使用代理

307:Temporary  Redirect/临时重定向

400:Bad Request/错误请求

401:Unauthorized/未授权

403:Forbidden/禁止

404:Not Found/未找到:客户端所给的地址无法找到任何资源

405:Method Not Allowed/方法未允许

406:Not Acceptable/无法访问

407:Proxy Authentication Required/代理服务器认证要求

408:Request Timeout/请求超时

409:Conflict/冲突

410:Gone/已经不存在,是在指导文档已被移走的情况下使用。

411:Length Required/需要数据长度

412:Precondition Failed/先决条件错误

413:Request Entity Too Large/请求实体过大

414:Request URI  Too Long/请求URL过长

415:Unsupported Media Type/不支持的媒体格式

416:Requested Range Not Satisfiable/请求范围无法满足

417:Exception Failed/期望失败

500:Internal Server Error/内部服务器错误

501:Not Implemented/未实现

502:Bad Gateway/错误的网关

503:Service Unavailable/服务无法获得

504:Gateway Timeout/网关超时

505:HTTP Version Not Supported/不支持的HTTP版本

 

什么情况下触发浏览器的reflow/repaint?

1. 页面首次加载时

2. DOM元素的添加、修改(内容)、删除( Reflow + Repaint)

3. 仅修改DOM元素的字体颜色(只有Repaint,因为不需要调整布局)

4. 应用新的样式或者修改任何影响元素外观的属性

5. Resize浏览器窗口、滚动页面

6.读取元素的某些属性(offsetLeft、offsetTop、offsetHeight、offsetWidth、scrollTop/Left/Width/Height、clientTop/Left/Width/Height、getComputedStyle()、currentStyle(in IE))

 

如何减少reflow?

1.不要用 inline style 或 table 布局,flexbox 布局也会给性能带来一些小困扰。inline style 会在 html 下载完后进行一次额外的 Reflow,table布局的开销远比其他 DOM 元素的布局开销要大。flexbox 的 item 会在 HTML 下载完成后改变尺寸。

2.尽量简写 CSS,避免使用复杂的 CSS 选择器,使用 Unused CSS,uCSS,gulp-uncss可以有效的减少样式的定义和文件的大小。

3.减少 DOM 的层级,减少 DOM 的数量,如果不需适配老浏览器,删掉一些无用的 wrapper 性质的 DOM 元素,总之越少越好。

4.在一个 DOM 树中,尽可能改那些没有特别多子元素 DOM 的 class,子元素少的可以改,多的不推荐。

5.删掉复杂的动画,运用动画的元素尽量是 position:absolute 或 position:fixed 的,这样会让他们脱离文档流,不去影响其他的元素。

6.display:none 的元素不会引发 Reflow 和 Repaint,可以在让这些元素在 display 之前进行一些诸如颜色、尺寸什么的改变。

7.批量去更新元素

8.避免大量 DOM 之间互相影响.

 

稳定的排序算法:归并排序、基数排序、冒泡排序

不稳定的排序算法:选择排序、快速排序、希尔排序、堆排序O(nlog(n))

冒泡排序O(nlog(n)):把小的元素往前调或者把大的元素往后调。比较的是两个相邻的元素。

选择排序O(n^2):给每个位置选择当前最小的。

插入排序O(n^2):在一个已经有序的小序列的基础上,一次插入一个元素。

归并排序O(nlog(n)):把序列递归地分成短序列,递归出口是短序列只有一个元素(认为直接有序)或者两个序列(1次比较和交换),然后把各个有序的段序列合并成一个有序的长序列,不断合并直到原序列全部排好序。

基数排序)o(nk):按照低位先排序,然后收集;再按照高位排序,然后再收集;依次类推,直到最高位。

希尔排序o((nlog(n))^2):按照不同步长对元素进行插入排序,当刚开始元素很无序的时候,步长最大,所以插入排序元素个数很少,速度很快;当元素基本有序了,步长很小,插入排序对于有序的序列效率很高。

 

1.A类IP地址

一个A类IP地址是由8位网络地址和24位主机地址组成。网络地址的最高位必须是“0”,第一字节的数字范围为:0-127,每个A类地址可连接2^24-2台主机。A类地址的默认地址掩码是255.0.0.0

2.B类IP地址

一个B类IP地址是由16位网络地址和16位主机地址组成。网络地址的最高位必须是“10”,第一字节的数字范围是:128-191,每个B类地址可连接2^16-2台主机,B类地址的morning地址掩码是255.255.0.0

3.C类IP地址

一个C类IP地址是由24位网络地址和8位主机地址组成,网络地址的最高位必须是“110”,第一字节的数字范围是:192-223,每个C类地址可连接2^8-2台主机。C类地址的默认地址掩码是:255.255.255.0

4.D类地址用于多播(一对多通信)

网络地址的前四位是“1110”,第一字节的数字范围:224-240,是多点播送地址,用于多目的地信息的传输,和作为备用。

5.E类地址

以“11110”开始,第一字节的数字范围为:241-255.E类地址保留,仅作实验和开发用。

 

基于TCP和UDP的协议

TCP 面向连接的服务(eg:Telnet、FTP、rlogin、X Windows和SMTP、SNMP、HTTP)需要高度的可靠性,所以他们使用了TCP。DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。

UDP不被应用于那些使用虚电路的面向连接的服务,UDP主要用于那些面向查询—应答的服务,例如NFS。相对于FTP和TElnet,这些服务需要交换的信息量较小。使用UDP的服务包括NTP(网络时间协议)和DNS(DNS也使用TCP)TFTP。基于DCP的协议主要有DNS、TFTP、SNMP。

HTTP:超文本协议。

Telnet:网络电传,Internet远程登录服务的标准协议和主要方式。

FTP:文本传输协议

SMTP:简单邮件传输协议,它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP服务器默认的网络监听端口号为25

DNS:域名服务

ECHO:回绕协议

NTP:网络时间协议

SNMP:简单网络管理协议

BOOTP:启动协议

TCP和UDP的区别:

1.TCP是传输控制协议,UDP是用户数据报协议

2.TCP是面向连接的,UDP是无连接的

3.TCP是全双工的可靠信道,UDP是不可靠信道。

4.TCP的报文首部为20字节,UDP的报文首部8字节。

常用的邮件协议:

SMTP、POP3、ICAP

POP3:Post Office Protocol3的简称。邮局协议的第三个版本,规定怎样将个人计算机连接Internet的邮件服务器和下载电子邮件的电子协议。是因特网电子邮件的第一个离线协议标准,POP3允许用户把从服务器把邮件存储到本地主机,同时删除保存在邮件服务器上的邮件

IMAP:Internet Mail Access Protocol ,交互式邮件存取协议,开启IMAP后,在电子邮件客户端收取的邮件仍然保留在服务器上,同时在客户端的操作都会反馈到服务器上,所以无论从浏览器登录邮箱或者客户端软件登录邮箱,看到的邮件以及状态都是一致的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注