前端面试的计算机网络部分(2)每天10个小知识点
目录
- 系列文章目录
- 前端面试的计算机网络部分(1)每天10个小知识点
- 知识点
- 11. DNS 完整的查询过程
- 递归查询过程:
- 迭代查询过程:
- 12. OSI 七层模型
- 13. TCP 的三次握手和四次挥手
- 三次握手(Three-Way Handshake):
- 四次挥手(Four-Way Handshake):
- 14. DNS解析过程
- 15. 什么是协议缓存和预连接吗?它们如何影响网络性能?
- 16. 服务器处理请求并返回HTTP报文过程
- 17.TCP、UDP和HTTP的区别
- 18. 说一下你对http状态码的了解多少?
- 19.在优化网络性能的同时,如何确保用户的数据隐私和安全?
- 20.如何利用前端网络优化来提高用户满意度和积极体验?
👍 点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!
系列文章目录
前端面试的计算机网络部分(1)每天10个小知识点
知识点
11. DNS 完整的查询过程
DNS(Domain Name System)是一种用于将域名转换为IP地址的系统,使我们能够通过易记的域名访问互联网资源。DNS查询过程可以分为递归查询和迭代查询两种方式,下面我将详细解释这两种查询过程,并提供相应的代码示例。
递归查询过程:
- 客户端发起查询请求: 当用户在浏览器中输入一个域名时,操作系统的DNS解析库将会向本地DNS服务器发起一个递归查询请求。
- 本地DNS服务器查询根域名服务器: 本地DNS服务器收到查询请求后,首先会向根域名服务器发送查询请求,以获取顶级域名服务器的IP地址。
- 根域名服务器返回顶级域名服务器IP地址: 根域名服务器返回包含顶级域名服务器IP地址的响应。
- 本地DNS服务器查询顶级域名服务器: 本地DNS服务器接收到根域名服务器的响应后,会向顶级域名服务器发送查询请求,以获取目标域名的权威域名服务器的IP地址。
- 顶级域名服务器返回权威域名服务器IP地址: 顶级域名服务器返回包含权威域名服务器IP地址的响应。
- 本地DNS服务器查询权威域名服务器: 本地DNS服务器接收到顶级域名服务器的响应后,会向权威域名服务器发送查询请求,以获取目标域名对应的IP地址。
- 权威域名服务器返回IP地址: 权威域名服务器返回目标域名对应的IP地址。
- 本地DNS服务器缓存结果: 本地DNS服务器将获取的IP地址缓存起来,以备将来的查询。
- 本地DNS服务器将IP地址返回给客户端: 本地DNS服务器将获取的IP地址返回给客户端的DNS解析库。
- 客户端发起连接请求: 客户端使用获取到的IP地址发起与目标服务器的连接请求。
下面是一个简化的Node.js代码示例,演示了如何进行递归查询过程:
const dns = require('dns');const domainName = 'www.example.com';dns.resolve(domainName, (err, addresses) => {if (err) {console.error('DNS resolution error:', err);return;}console.log(`IP addresses for ${domainName}:`, addresses);
});
迭代查询过程:
- 客户端发起查询请求: 同样,当用户在浏览器中输入一个域名时,操作系统的DNS解析库将会向本地DNS服务器发起一个迭代查询请求。
- 本地DNS服务器查询根域名服务器: 本地DNS服务器向根域名服务器发送查询请求。
- 根域名服务器返回顶级域名服务器IP地址: 根域名服务器返回包含顶级域名服务器IP地址的响应。
- 本地DNS服务器查询顶级域名服务器: 本地DNS服务器向顶级域名服务器发送查询请求。
- 顶级域名服务器返回权威域名服务器IP地址: 顶级域名服务器返回包含权威域名服务器IP地址的响应。
- 本地DNS服务器查询权威域名服务器: 本地DNS服务器向权威域名服务器发送查询请求。
- 权威域名服务器返回IP地址: 权威域名服务器返回目标域名对应的IP地址。
- 本地DNS服务器将IP地址返回给客户端: 本地DNS服务器将获取的IP地址返回给客户端的DNS解析库。
- 客户端发起连接请求: 客户端使用获取到的IP地址发起与目标服务器的连接请求。
迭代查询过程中,每次查询都是在上一级的DNS服务器中进行,直到获得目标域名对应的IP地址。
请注意,实际的DNS查询过程可能会更加复杂,涉及到缓存、负载均衡等因素。上述示例只是一个简化的描述和代码演示。
12. OSI 七层模型
OSI(Open Systems Interconnection)七层模型是计算机网络领域中的一种概念性框架,用于描述计算机网络中不同层次的通信协议和功能。每一层都负责不同的任务,从底层的物理传输到顶层的应用。以下是OSI七层模型的每一层及其功能的详细说明:
- 物理层(Physical Layer):
- 功能:处理物理连接、电压、比特流等硬件层面的细节,负责数据的传输和接收。
- 示例:传输介质、网线、光纤、信号编码。
- 数据链路层(Data Link Layer):
- 功能:在直接相连的两个节点之间提供可靠的数据传输,通过帧(Frame)管理错误控制和流控。
- 示例:以太网、无线局域网(WiFi)等。
- 网络层(Network Layer):
- 功能:实现不同网络之间的数据路由和转发,提供跨网络的数据传输。
- 示例:IP(Internet Protocol)、路由器。
- 传输层(Transport Layer):
- 功能:为端到端通信提供可靠性和数据分割/重组,处理数据传输的错误恢复和流量控制。
- 示例:TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)。
- 会话层(Session Layer):
- 功能:管理会话的建立、维护和终止,控制数据交换的方式和顺序。
- 示例:会话控制、同步和管理。
- 表示层(Presentation Layer):
- 功能:处理数据的格式转换、加密解密和压缩解压缩等,确保不同系统的数据格式兼容性。
- 示例:数据格式转换、加密、压缩。
- 应用层(Application Layer):
- 功能:提供用户应用程序与网络通信的接口,包括应用协议(如HTTP、SMTP、FTP)。
- 示例:Web浏览器、电子邮件客户端、文件传输客户端等。
这些七层共同构成了一个分层的通信协议框架,使不同的网络设备和应用能够通过特定的协议进行通信,各层之间的分离也使得网络协议的开发、维护和升级更加灵活和可扩展。需要注意的是,实际网络协议可能并不都严格遵循七层模型,一些协议可能会涵盖多个层次的功能。
13. TCP 的三次握手和四次挥手
TCP(Transmission Control Protocol)是一种可靠的传输协议,用于在计算机网络中实现可靠的数据传输。在建立和终止TCP连接时,涉及到三次握手和四次挥手的过程。
三次握手(Three-Way Handshake):
三次握手是用于建立TCP连接的过程,确保双方都能够通信。
- 第一次握手(SYN): 客户端发送一个带有 SYN(同步序列号)标志的包,请求建立连接。
- 第二次握手(SYN + ACK): 服务器接收到客户端的请求后,发送一个带有 SYN 和 ACK 标志的包,表示同意建立连接。
- 第三次握手(ACK): 客户端收到服务器的确认后,发送一个带有 ACK 标志的包,确认连接已建立。
此时,TCP连接已建立,双方可以开始进行数据传输。
四次挥手(Four-Way Handshake):
四次挥手是用于终止TCP连接的过程,确保双方都完成了数据传输。
- 第一次挥手(FIN): 客户端或服务器其中一方发送一个带有 FIN(结束)标志的包,表示想要终止连接,但仍然可以接收数据。
- 第二次挥手(ACK): 接收到终止请求的一方发送一个带有 ACK 标志的包,确认收到了终止请求。
- 第三次挥手(FIN): 接收到确认的一方在完成了所有数据发送后,发送一个带有 FIN 标志的包,表示它已经没有数据要发送了。
- 第四次挥手(ACK): 另一方收到终止请求后,发送一个带有 ACK 标志的包,确认收到终止请求。
此时,TCP连接已经终止,双方都不再能够进行数据传输。
下面是一个简化的文本示例,演示了三次握手和四次挥手的过程:
三次握手:
客户端 -> 服务器: SYN
服务器 -> 客户端: SYN + ACK
客户端 -> 服务器: ACK数据传输阶段...四次挥手:
客户端 -> 服务器: FIN
服务器 -> 客户端: ACK
服务器 -> 客户端: FIN
客户端 -> 服务器: ACK
这些握手和挥手过程确保了双方在建立和终止连接时的可靠通信。实际应用中,网络延迟和异常情况可能会影响握手和挥手的细节。
14. DNS解析过程
DNS解析是将域名转换为IP地址的过程,使得我们可以通过易于记忆的域名访问互联网资源。DNS解析涉及多个步骤,下面是DNS解析过程的详细说明:
- 浏览器发起解析请求: 当用户在浏览器中输入一个网址(域名)时,浏览器会向操作系统的DNS解析库发起解析请求。
- 本地DNS缓存查询: 解析库首先会在本地缓存中查找是否已经解析过该域名。如果找到了,解析过程将会结束,直接使用缓存中的IP地址。
- 本地DNS服务器查询: 如果本地缓存中没有找到对应的IP地址,解析库会将解析请求发送给本地DNS服务器,通常由ISP(互联网服务提供商)提供。
- 根域名服务器查询: 如果本地DNS服务器也没有缓存该域名的IP地址,它会向根域名服务器发起查询请求,询问顶级域名服务器的地址。
- 顶级域名服务器查询: 根域名服务器返回顶级域名服务器的地址,本地DNS服务器随即向顶级域名服务器发起查询请求。
- 权威域名服务器查询: 顶级域名服务器返回权威域名服务器的地址,本地DNS服务器再次向权威域名服务器发起查询请求。
- 权威域名服务器返回IP地址: 权威域名服务器返回包含目标域名对应IP地址的响应。
- 本地DNS服务器缓存结果: 本地DNS服务器将获取到的IP地址缓存起来,以备将来的查询。
- 本地DNS服务器将IP地址返回给解析库: 本地DNS服务器将获取到的IP地址返回给操作系统的DNS解析库。
- 解析库将IP地址返回给浏览器: 操作系统的DNS解析库将获取到的IP地址返回给浏览器,浏览器可以使用这个IP地址与目标服务器建立连接。
- 浏览器发起连接请求: 浏览器使用获取到的IP地址向目标服务器发起连接请求,开始进行数据传输。
需要注意的是,DNS解析过程可能会因网络延迟、缓存、DNS服务器性能等因素而有所不同。但总体来说,上述步骤描述了DNS解析的一般流程。
15. 什么是协议缓存和预连接吗?它们如何影响网络性能?
协议缓存(也称为HSTS)和预连接是两种前端网络优化技术,它们可以显著影响网络性能和安全性。
-
协议缓存(HTTP Strict Transport Security - HSTS): HSTS是一种安全性机制,旨在强制客户端在与服务器通信时始终使用加密的HTTPS连接,而不是明文的HTTP连接。当服务器发送HSTS头部给浏览器后,浏览器会在一定时间内(称为"最大年龄")强制使用HTTPS,即使用户尝试使用HTTP也会被自动转到HTTPS连接。
影响网络性能: HSTS能够提升安全性,避免中间人攻击和数据劫持。但是,HSTS可能会导致初始的HTTPS连接延迟,因为浏览器在第一次访问时需要获取服务器的HSTS策略。一旦获取到策略后,后续的连接会直接使用HTTPS,提高了访问速度。
-
预连接(Preconnect): 预连接是一种浏览器优化技术,通过在浏览器渲染过程中提前建立DNS解析、TCP握手和TLS握手连接,来预加载将来可能需要的域名。这对于第三方域名、CDN等资源域名特别有用,因为它们通常需要额外的网络往返时间。
影响网络性能: 预连接可以显著减少请求的网络延迟,因为当浏览器准备发起实际的请求时,DNS解析、TCP握手和TLS握手已经完成。这可以提高页面加载速度,特别是对于使用外部资源的页面。
综合来看,协议缓存和预连接都是前端网络优化技术,它们对网络性能有积极影响。协议缓存提高了安全性,虽然可能在初始连接上产生一些延迟。预连接则减少了网络往返时间,提高了资源加载速度。根据具体的应用场景,可以合理应用这些技术来提升网站的性能和安全性。
16. 服务器处理请求并返回HTTP报文过程
服务器处理请求并返回HTTP报文是Web应用程序的基本交互过程。以下是服务器处理请求并返回HTTP报文的详细步骤:
- 客户端发送HTTP请求: 当用户在浏览器中输入URL或点击链接时,浏览器会生成一个HTTP请求,将其发送到目标服务器。
- 服务器接收请求: 服务器接收到客户端发送的HTTP请求。
- 解析HTTP请求: 服务器解析HTTP请求中的各个部分,如请求方法、请求路径、请求头、请求体等。
- 处理请求: 服务器根据请求的内容和服务器端的逻辑,执行相应的处理。这可能涉及数据库查询、计算、生成内容等。
- 生成HTTP响应: 服务器生成一个HTTP响应,包括响应状态码、响应头和响应体。
- 设置响应头: 服务器设置HTTP响应的头部信息,包括内容类型、缓存策略等。
- 生成响应体: 服务器生成HTTP响应的主体部分,包括HTML内容、JSON数据等。
- 发送HTTP响应: 服务器将生成的HTTP响应发送回客户端。
- 客户端接收响应: 客户端(通常是浏览器)接收服务器发送的HTTP响应。
- 解析HTTP响应: 客户端解析HTTP响应中的状态码、响应头和响应体。
- 渲染响应内容: 浏览器根据响应头中的内容类型以及响应体中的数据,进行页面渲染或数据展示。
- 显示页面内容: 浏览器将渲染后的内容显示给用户,用户可以看到网页内容或应用程序界面。
这个过程中涉及到HTTP请求和响应,其中HTTP请求包含HTTP方法(GET、POST等)、URL路径、请求头和请求体,而HTTP响应包括响应状态码、响应头和响应体。这种交互模式使得客户端和服务器能够进行有效的通信,实现Web页面和应用的展示与交互。
17.TCP、UDP和HTTP的区别
TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)和HTTP(Hypertext Transfer Protocol)是计算机网络中常用的三种协议,它们在不同层面上具有不同的特点和用途。以下是它们之间的区别:
- TCP(传输控制协议):
- 特点: TCP是一种可靠的、面向连接的协议,它保证数据的可靠传输,确保数据按顺序到达目标。TCP提供了错误检测、流量控制和拥塞控制等功能,以保证数据传输的稳定性和可靠性。
- 用途: 适用于需要可靠数据传输的场景,如网页浏览、文件下载、电子邮件等。
- UDP(用户数据报协议):
- 特点: UDP是一种无连接的协议,不保证数据的可靠传输,也没有拥塞控制等机制。UDP更加轻量级,传输速度较快,但可能会丢失部分数据包。
- 用途: 适用于对传输速度要求较高、但数据丢失不会对应用造成重大影响的场景,如实时音视频传输、在线游戏等。
- HTTP(超文本传输协议):
- 特点: HTTP是一种应用层协议,用于在Web浏览器和服务器之间传输超文本数据。它是无状态的,每个请求都是独立的,不保留之前请求的信息。HTTP有两种主要版本:HTTP/1.1和HTTP/2,后者引入了多路复用等优化特性。
- 用途: 用于浏览器和服务器之间传输网页内容、图像、视频等,支持与服务器交互,包括GET请求(获取数据)、POST请求(提交数据)等。
总结:
- TCP提供可靠的连接和数据传输,适用于需要确保数据完整性和顺序的应用。
- UDP提供更快的传输速度,适用于实时性要求高且能容忍少量数据丢失的应用。
- HTTP是应用层协议,用于在浏览器和服务器之间传输数据,支持网页浏览、数据交互等。HTTP本身可以基于TCP或UDP实现。
不同的协议根据应用需求选择合适的通信方式,以满足性能、可靠性和实时性等要求。
18. 说一下你对http状态码的了解多少?
HTTP状态码是在HTTP协议中用来表示服务器对请求的响应结果的数字代码。它们提供了关于请求的处理情况的信息,帮助客户端了解服务器端的操作状态。HTTP状态码由三位数字组成,分为五个类别,每个类别代表不同类型的响应。以下是对HTTP状态码的一些常见了解:
- 1xx - 信息性响应: 表示请求已经被接收,继续处理。
- 100 Continue:服务器已收到请求的初始部分,客户端应该继续发送其余部分。
- 2xx - 成功: 表示请求已成功被服务器理解、接受和处理。
- 200 OK:请求成功,正常返回结果。
- 201 Created:请求成功,服务器创建了新的资源。
- 204 No Content:请求成功,但响应中不包含实体主体内容。
- 3xx - 重定向: 表示需要客户端进一步操作以完成请求。
- 301 Moved Permanently:永久性重定向,请求的资源已经被永久移动到新的URL。
- 302 Found:临时性重定向,请求的资源暂时被移动到新的URL。
- 4xx - 客户端错误: 表示客户端发起的请求有误或无法被服务器处理。
- 400 Bad Request:请求错误,服务器无法理解请求。
- 401 Unauthorized:未授权,需要用户认证或登录。
- 403 Forbidden:禁止访问,服务器拒绝请求。
- 404 Not Found:未找到,请求的资源不存在。
- 5xx - 服务器错误: 表示服务器在处理请求时出现错误。
- 500 Internal Server Error:服务器内部错误。
- 502 Bad Gateway:网关错误,服务器充当网关或代理,从上游服务器接收到无效响应。
- 503 Service Unavailable:服务不可用,服务器当前无法处理请求。
- 504 Gateway Timeout:网关超时,上游服务器在规定时间内未响应。
每个状态码都有特定的含义,客户端根据状态码来判断请求是否成功以及如何进一步处理。在编写Web应用程序时,了解HTTP状态码能够帮助你更好地处理不同情况下的请求和响应。
19.在优化网络性能的同时,如何确保用户的数据隐私和安全?
在优化网络性能的同时确保用户数据隐私和安全是至关重要的。以下是一些方法和策略,可以在网络性能优化的前提下保护用户的数据隐私和安全:
- 使用加密通信: 使用HTTPS(基于SSL/TLS)来加密用户与服务器之间的通信,确保数据在传输过程中不容易被窃取或篡改。HTTPS协议通过数字证书验证服务器的身份,保护数据的机密性和完整性。
- 数据最小化原则: 采用数据最小化的原则,只收集、存储和处理必要的用户数据。减少不必要的数据收集可以降低隐私风险。
- 合规性和法律法规遵循: 遵循适用的隐私法律法规,如欧洲的GDPR、美国的CCPA等。确保在收集、存储和处理用户数据时遵循相关合规性要求。
- 数据加密存储: 除了在传输过程中加密数据,还应该在存储时对敏感数据进行加密。这可以防止数据泄露,即使服务器被入侵也能保护用户信息。
- 强化身份验证: 对用户进行强化身份验证,使用多因素认证(MFA)等方式,以确保只有授权的用户可以访问敏感信息。
- 安全开发实践: 在开发过程中采用安全的编码实践,避免常见的安全漏洞,如SQL注入、跨站脚本攻击等。
- 安全审计和监控: 定期对系统进行安全审计和监控,及时检测异常活动并采取措施防范潜在的安全威胁。
- 隐私政策和透明度: 提供清晰的隐私政策,告知用户数据如何收集、使用和保护。让用户明确知道他们的数据会被如何处理。
- 数据保留期限: 定义数据保留期限,一旦数据不再需要,应该进行安全且彻底的删除。
- 教育和培训: 对员工和开发团队进行安全和隐私方面的培训,提高大家对数据安全和隐私的意识。
综合考虑网络性能和数据隐私安全,可以采用综合性的安全策略,确保在提供高效网络服务的同时,用户的数据得到充分保护。
20.如何利用前端网络优化来提高用户满意度和积极体验?
前端网络优化是提高用户满意度和积极体验的关键因素之一。通过减少加载时间、提高页面响应速度和优化用户界面,可以使用户获得更快、更流畅的访问体验。以下是一些前端网络优化的方法,可以提高用户满意度和积极体验:
- 压缩资源: 压缩CSS、JavaScript和图像等前端资源,减少文件大小,加快下载速度。
- 使用浏览器缓存: 使用HTTP缓存头,使得浏览器能够缓存页面资源,减少重复下载。
- CDN加速: 使用内容分发网络(CDN)来分发静态资源,将资源放置在全球分布的服务器上,从离用户最近的服务器获取资源,提高加载速度。
- 异步加载: 使用异步加载技术,如使用
async
和defer
属性加载脚本,避免阻塞页面渲染。 - 图片优化: 使用适当的图像格式,进行图像压缩和裁剪,以及使用图像懒加载技术。
- 减少HTTP请求数: 合并和精简CSS和JavaScript文件,减少HTTP请求的数量。
- 使用响应式设计: 使用响应式设计来适应不同屏幕尺寸和设备,提供更好的用户体验。
- 优化字体加载: 使用Web字体时,仅加载所需的字符和字重,避免不必要的下载。
- 减少重定向: 减少页面的重定向,以避免额外的网络请求。
- 提前加载关键资源: 预加载关键资源,使得用户点击链接时能够更快地加载页面。
- 使用缓存技术: 使用本地存储、SessionStorage和LocalStorage等缓存技术,减少不必要的请求。
- 性能监测和分析: 使用工具监测和分析页面性能,识别瓶颈并进行优化。
通过综合应用这些优化技术,可以提高网站的性能,加速页面加载速度,提供更流畅的用户体验,从而提高用户满意度和积极体验。
相关文章:
前端面试的计算机网络部分(2)每天10个小知识点
目录 系列文章目录前端面试的计算机网络部分(1)每天10个小知识点 知识点11. DNS 完整的查询过程递归查询过程:迭代查询过程: 12. OSI 七层模型13. TCP 的三次握手和四次挥手三次握手(Three-Way Handshake)&…...
【LeetCode】224. 基本计算器
224. 基本计算器(困难) 方法:双栈解法 思路 我们可以使用两个栈 nums 和 ops 。 nums : 存放所有的数字ops :存放所有的数字以外的操作,/- 也看做是一种操作 然后从前往后做,对遍历到的字符做…...
服务器数据恢复-EVA存储磁盘故障导致存储崩溃的数据恢复案例
EVA系列存储是一款以虚拟化存储为实现目的的中高端存储设备。EVA存储中的数据在EVA存储设备工作过程中会不断进行迁移,如果运行的任务比较复杂,EVA存储磁盘负载加重,很容易出现故障的。EVA存储通过大量磁盘的冗余空间和故障后rss冗余磁盘动态…...
【stylus】通过css简化搜索页面样式
发现stylus专门修改样式的插件后,发现之前写JS调整样式的方式是在太蠢了,不过有一些交互的东西还是得用JS,例如设置按钮来交互显示功能,或记录功能等。插件可以让简化网站变得简单,而且可以实时显示,真的不…...
【官方中文文档】Mybatis-Spring #使用 SqlSession
使用 SqlSession 在 MyBatis 中,你可以使用 SqlSessionFactory 来创建 SqlSession。 一旦你获得一个 session 之后,你可以使用它来执行映射了的语句,提交或回滚连接,最后,当不再需要它的时候,你可以关闭 s…...
Redis三种持久化方式详解
一、Redis持久性 Redis如何将数据写入磁盘 持久性是指将数据写入持久存储,如固态磁盘(SSD)。Redis提供了一系列持久性选项。其中包括: RDB(快照):RDB持久性以指定的时间间隔执行数据集的时间点…...
17.2 【Linux】通过 systemctl 管理服务
systemd这个启动服务的机制,是通过一支名为systemctl的指令来处理的。跟以前 systemV 需要 service / chkconfig / setup / init 等指令来协助不同, systemd 就是仅有systemctl 这个指令来处理而已。 17.2.1 通过 systemctl 管理单一服务 (s…...
第 7 章 排序算法(3)(选择排序)
7.6选择排序 7.6.1基本介绍 选择式排序也属于内部排序法,是从欲排序的数据中,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的。 7.6.2选择排序思想: 选择排序(select sorting)也是一种简单的排序方法…...
Less文件可以做哪些复杂操作
在Less文件中,你可以进行许多复杂的操作来增强样式表的功能和灵活性。以下是一些常见的操作: 变量(Variables):使用符号定义和使用变量,可以在整个样式表中重复使用相同的值,以便轻松修改和维护…...
HTML5岗位技能实训室建设方案
一 、系统概述 HTML5岗位技能技术是计算机类专业重要的核心课程,课程所包含的教学内容多,实践性强,并且相关技术更新快。传统的课堂讲授模式以教师为中心,学生被动式接收,难以调动学生学习的积极性和主动性。混合式教学…...
【Linux】GNOME图形化界面安装
Linux下具有多种图形化界面,每种图形化界面具有不同的功能,在这里我们安装的是GNOME。 1、 挂载yum源 挂载之前首先确保使用ISO映像文件 2.挂载之前先在/mnt下面创建一个cdrom目录用来作为挂载点目录 挂载完成之后那么就要去修改yum源了 Vi /etc/yum.r…...
大数据课程J3——Scala的类定义
文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 了解Scala的柯里化 Currying; ⚪ 掌握Scala的类定义; ⚪ 掌握Scala的样例类、option类; ⚪ 掌握Scala的隐式转换机制; 一、柯里化 Currying 柯里化(Currying)技术 Christopher St…...
Ribbon:使用Ribbon实现负载均衡
Ribbon实现的是实线走的 建立三个数据库 /* SQLyog Enterprise v12.09 (64 bit) MySQL - 5.7.25-log : Database - db01 ********************************************************************* *//*!40101 SET NAMES utf8 */;/*!40101 SET SQL_MODE*/;/*!40014 SET OLD_UNIQ…...
最新最全的~教你如何搭建高可用Lustre双机集群
1.搭建双机lustre高可用集群: 1.环境说明: 主机名系统挂载情况IP地址Lustre集群名内存mds001Centos7.9(共享磁盘)1个mgs,1个MDT,2个OST192.168.10.21/209.21global1Gmds002Centos7.9(共享磁盘)1个mgs,1个MDT,2个OST192.168.10.22/209.22global1GclientCentos7.9无19…...
深入浅出Pytorch函数——torch.nn.init.uniform_
分类目录:《深入浅出Pytorch函数》总目录 相关文章: 深入浅出Pytorch函数——torch.nn.init.calculate_gain 深入浅出Pytorch函数——torch.nn.init.uniform_ 深入浅出Pytorch函数——torch.nn.init.normal_ 深入浅出Pytorch函数——torch.nn.init.c…...
会员管理系统实战开发教程02-H5应用创建
低代码平台作为一个应用的快速生成工具,可以方便的进行一页多端的开发,可以在一个应用里生成三端的应用,也可以拆分成三个应用来制作。三端包括H5、小程序和PC管理后台。 上一篇我们介绍了PC管理后台的创建方法,本篇我们介绍一下…...
记一次由于整型参数错误导致的任意文件上传
当时误打误撞发现的,觉得挺奇葩的,记录下 一个正常的图片上传的点,文件类型白名单 但是比较巧的是当时刚对上面的id进行过注入测试,有一些遗留的测试 payload 没删,然后在测试上传的时候就发现.php的后缀可以上传了&a…...
spring之Spring Security - 实现身份验证与授权
Spring Security - 实现身份验证与授权 标题: Spring Security - 实现身份验证与授权摘要:引言:词汇解释:详细介绍:实现基本的身份验证与授权解释概念:代码示例:注意事项: 定制化认证与授权流程解释概念:代码示例:注意事项: 集成OAuth2认证解释概念:代码示例:注意事项: 总结:参…...
【Unity3D赛车游戏】【二】如何制作一个真实模拟的汽车
👨💻个人主页:元宇宙-秩沅 👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 👨💻 本文由 秩沅 原创 👨💻 收录于专栏:Uni…...
【Linux】线程篇Ⅱ:
线程Ⅱ 🔗接上篇【线程篇Ⅰ】五、线程库 和 线程 id六、同步与互斥 🔗接上篇【线程篇Ⅰ】 👉【Linux】线程篇Ⅰ:线程和task_struct 执行流的理解、相关接口命令、线程异常、线程的私有和共享 五、线程库 和 线程 id 对于 Linux …...
浅尝OpenResty
文章目录 1. 写在前面2. 下载安装openresty2.1 下载Openresty2.2 设置nginx启动 3. 嵌入lua脚本4. 实践5. 小结 1. 写在前面 当一个域名中衍生出多个服务的时候,如果想要保持对外服务始终是一个域名,则需要通过nginx反向代理来实现。如果在转发的时候需…...
MySQL分页查询慢怎么办
今天看到一个问题。 MySQL分页查询慢怎么办? 第一反应是用limit限制返回的条数。 比如 select * from table order by idlimit 10, 100;实际上我们限制的只是返回的条数是100,并不是查询时就从第10条开始获取数据。 所以实际上MySQL会从第0条开始查询&a…...
mongodb集群
端口192.168.115.3 192.168.115.4 1192.168.115.5 下载MongoDB软件包版本为4.2.14并安装 rpm -ih --force --nodeps *.rpm 2创建文件夹mkdir -p /opt/local/mongo-cluster/conf 3.在目录里创建配置文件cd /opt/local/mongo-cluster/conf …...
回归预测 | MATLAB实现WOA-BP鲸鱼优化算法优化BP神经网络多输入单输出回归预测(多指标,多图)
回归预测 | MATLAB实现WOA-BP鲸鱼优化算法优化BP神经网络多输入单输出回归预测(多指标,多图) 目录 回归预测 | MATLAB实现WOA-BP鲸鱼优化算法优化BP神经网络多输入单输出回归预测(多指标,多图)效果一览基本…...
【前端从0开始】JavaSript——循环控制语句
循环控制语句 while语句 While 循环会在指定条件为真时循环执行代码块。 While循环,先进行条件判断,再执行循环体的代码 while (条件表达式){循环体 }注意:当前循环中,如果不满足条件,一次都不会执行 var i 1; whi…...
【Elasticsearch】spring-boot-starter-data-elasticsearch的使用以及Elasticsearch集群的连接
更多有关博主写的往期Elasticsearch文章 标题地址【ElasticSearch 集群】Linux安装ElasticSearch集群(图文解说详细版)https://masiyi.blog.csdn.net/article/details/131109454基于SpringBootElasticSearch 的Java底层框架的实现https://masiyi.blog.c…...
Python学习笔记_进阶篇(四)_django知识(三)
本章内容: Django 发送邮件Django cookieDjango sessionDjango CSRF Django 发送邮件 我们常常会用到一些发送邮件的功能,比如有人提交了应聘的表单,可以向HR的邮箱发邮件,这样,HR不看网站就可以知道有人在网站上提…...
指针(初阶)
1. 指针是什么? 指针是什么? 指针理解的2个要点: 1. 指针是内存中一个最小单元的编号,也就是地址 2. 平时口语中说的指针,通常指的是指针变量,是用来存放内存地址的变量 总结:指针就是地址&…...
Flink内核源码解析--Flink中重要的工作组件和机制
Flink内核源码 1、掌握Flink应用程序抽象2、掌握Flink核心组件整体架构抽象3、掌握Flink Job三种运行模式4、理解Flink RPC网络通信框架Akka详解5、理解TaskManager为例子,分析Flink封装Akka Actor的方法和整个调用流程6、理解Flink高可用服务HighAvailabilityServ…...
Linux 压缩解压(归档管理):tar命令
计算机中的数据经常需要备份,tar是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。 tar使用格式 tar [参数] 打包文件名 文件 tar命令很特殊,其参数前面可以使用“-”&…...
怎样做网站手机和电脑通用/广州百度搜索排名优化
星期日星期一星期二星期三星期四星期五星期六 所花时间 (包括上课) 8:00~9:50 9:30~10:30代码量(行) 206(不包括复制例子)博客量(篇) 1…...
男女做爰高清免费视频网站/网络营销的方式与手段
上次看到按键精灵,更新了支持socket通讯的插件,于是兴冲冲的去看了下,结果有点失望。然后学了2天的lua脚本,自己开发了一个socket的插件。下面把完整代码贴上来--设置消息内容function QMPlugin.SendMsg(msg)contentMsg msgend--…...
建站市场/厦门seo推广
Python 3中的File对象不支持next()方法。 Python 3有一个内置函数next(),它通过调用其next ()方法从迭代器中检索下一个项目。 如果给定了默认值,则在迭代器耗尽返回此默认值,否则会引发StopIteration。 该方法可用于从文件对象读取下一个输入…...
做网站需要交维护费么/推广引流最快的方法
应用范例: 使用 TOPWAY Smart LCD (HMT050CC-C) 显示二维码 第一步 建立工程 ① 开 Editor 软件, 点击菜单栏建立新工程File --> New Project ② 输入工程名字工程名Project Name: QR_Code_Demo ③ 输入工程保存位置Create a Project Folder in: D:xxx ④ 选择智能模块显示…...
手机购物app排行榜前十名/seo专业术语
1.触摸钢琴项目描写叙述 1.1触摸钢琴功能描写叙述 实现手指点按琴键发出相应的音调,按下位置出现星云的粒子特效,滚动实现移动到别的琴键的位置,按下安卓返回键运行关闭。1.2触摸钢琴所需技术 粒子特效,安卓按键监听。2.触摸钢琴具…...
注册公司网站怎么收费/简述常用的网络营销方法
如题...