不仅在本地域名服务器中需要高速缓存,在主机中也需要 。许多主机在启动时从本地服务器下载名字和地址的全部数据库,维护存放自己最近使用的域名的高速缓存,并且只在从缓存中找不到名字时才使用域名服务器 。维护本地域名服务器数据库的主机应当定期地检查域名服务器以获取新的映射信息,而且主机必须从缓存中删除无效的项 。由于域名改动并不频繁,大多数网点不需花精力就能维护数据库的一致性 。
35、谈下你对 HTTP 长连接和短连接的理解?分别应用于哪些场景?在 HTTP/1.0 中默认使用短连接 。也就是说,客户端和服务器每进行一次 HTTP 操作,就建立一次连接,任务结束就中断连接 。当客户端浏览器访问的某个 HTML 或其他类型的 Web 页中包含有其他的 Web 资源(如:JavaScript 文件、图像文件、CSS 文件等),每遇到这样一个 Web 资源,浏览器就会重新建立一个 HTTP 会话 。
而从 HTTP/1.1 起,默认使用长连接,用以保持连接特性 。使用长连接的 HTTP 协议,会在响应头加入这行代码:
文章插图
在使用长连接的情况下,当一个网页打开完成后,客户端和服务器之间用于传输 HTTP 数据的 TCP 连接不会关闭,客户端再次访问这个服务器时,会继续使用这一条已经建立的连接 。
Keep-Alive 不会永久保持连接,它有一个保持时间,可以在不同的服务器软件(如:Apache)中设定这个时间 。实现长连接需要客户端和服务端都支持长连接 。
36、谈下 HTTP 1.0 和 1.1、1.2 的主要变化?
- HTTP1.1 的主要变化:
2. 然后 HTTP1.1 支持只发送 header 而不发送 body 。原因是先用 header 判断能否成功,再发数据,节约带宽,事实上,post 请求默认就是这样做的 。
3. HTTP1.1 的 host 字段 。由于虚拟主机可以支持多个域名,所以一般将域名解析后得到 host 。
- HTTP2.0 的主要变化:
2. HTTP2.0 支持服务端推送,就是服务端在 HTTP 请求到达后,除了返回数据之外,还推送了额外的内容给客户端;
3. HTTP2.0 压缩了请求头,同时基本单位是二进制帧流,这样的数据占用空间更少;
4. HTTP2.0 适用于 HTTPS 场景,因为其在 HTTP和 TCP 中间加了一层 SSL 层 。
37、HTTPS 的工作过程?1. 客户端发送自己支持的加密规则给服务器,代表告诉服务器要进行连接了;
2. 服务器从中选出一套加密算法和 hash 算法以及自己的身份信息(地址等)以证书的形式发送给浏览器,证书中包含服务器信息,加密公钥,证书的办法机构;
3. 客户端收到网站的证书之后要做下面的事情:
- 3.1 验证证书的合法性;
- 3.2 果验证通过证书,浏览器会生成一串随机数,并用证书中的公钥进行加密;
- 3.3 用约定好的 hash 算法计算握手消息,然后用生成的密钥进行加密,然后一起发送给服务器 。
- 4.1 用私钥解析出密码,用密码解析握手消息,验证 hash 值是否和浏览器发来的一致;
- 4.2 使用密钥加密消息;
38、HTTP 和 HTTPS 的区别?1. 开销:HTTPS 协议需要到 CA 申请证书,一般免费证书很少,需要交费;
2. 资源消耗:HTTP 是超文本传输协议,信息是明文传输,HTTPS 则是具有安全性的 ssl 加密传输协议,需要消耗更多的 CPU 和内存资源;
3. 端口不同:HTTP 和 HTTPS 使用的是完全不同的连接方式,用的端口也不一样,前者是 80,后者是 443;
4. 安全性:HTTP 的连接很简单,是无状态的;HTTPS 协议是由 TSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全 。
39、HTTPS 的优缺点?
- 优点:
2. HTTPS 协议是由 SSL + HTTP 协议构建的可进行加密传输、身份认证的网络协议,要比 HTTP 协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性;
3. HTTPS 是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本 。
推荐阅读
- 鹿晗|鹿晗说减肥太难了不想减!赴港递表,收入下降,失踪人口鹿晗近况
- 计算机编码ASCII、GBK、Unicode、UTF-8和URL编码的区别
- 电脑的几个基本常识
- 鹿晗|鹿晗晒金发直拍发文:“减肥太难了,不想减了”
- 二进制世界的秘密
- 计算机体系基础
- MySQL数据库锁理论
- 计算机基础必考知识 计算机基础试卷
- 眼睛干涩、视力模糊太难受?缓解视疲劳妙方请收好
- 浅谈计算机中的hosts文件
