计算机网络面试题汇总

news2025/1/11 10:57:07

文章目录

  • 计算机网络基础
    • 计算机网络体系结构(网络分层模型)
      • OSI 七层模型是什么?每一层的作用是什么?
      • TCP/IP 四层模型是什么?每一层的作用是什么?
      • 五层体系结构以及对应的协议
      • 为什么网络要分层,分层的好处?
      • 常见网络协议有哪些,每一层常见协议有哪些?
        • 应用层有哪些常见的协议?
        • 传输层有哪些常见的协议?
        • 网络层有哪些常见的协议?
  • HTTP
    • 从输入 URL 到页面展示到底发生了什么?(非常重要)
    • HTTP请求的过程与原理
    • 说说HTTP常用的状态码及其含义?
    • 说说HTTP的状态码,301和302的区别?
    • HTTP Header 中常见的字段有哪些?
    • HTTP 常用的请求方式,区别和用途?
    • POST和GET有哪些区别?
    • 请简单说一下你了解的端口及对应的服务?
    • HTTP/1.0、HTTP/1.1、HTTP/2.0、HTTP3.0的区别
      • HTTP/1.1 (相对于HTTP/1.0)
      • HTTP/2.0 (相对于HTTP/1.1)
      • HTTP/3.0 (相对于HTTP/2.0)
    • HTTPS流程是怎样的?
    • HTTP 与 HTTPS 的区别
    • 说说什么是数字签名?什么是数字证书?
    • 对称加密与非对称加密有什么区别?
    • HTTP 如何实现长连接?在什么时候会超时?
    • HTTP 是不保存状态(无状态)的协议, 如何理解?如何保存用户状态?
    • Cookie 和 Session 有什么区别, Cookie 和 Session 是如何配合的呢?
    • token和Session的区别
    • JWT
      • 什么是JWT?
      • JWT的结构
      • JWT的使用
      • JWT和Session区别?
      • 如何对JWT已签发的token 进行废弃处理?
      • 如何实现JWT的续签?
    • URI和URL的区别
    • forward和redirect的区别?
  • DNS
    • DNS 的作用是什么?
    • DNS 服务器有哪些?
    • DNS 解析的过程是什么样的?
    • DNS 劫持了解吗?
  • TCP 与 UDP
    • TCP 与 UDP 的区别(重要)
    • 什么时候选择 TCP,什么时候选 UDP?
    • HTTP 基于 TCP 还是 UDP?
    • 使用 TCP 的协议有哪些?使用 UDP 的协议有哪些?
    • 请详细介绍一下TCP 的三次握手机制
    • TCP握手为什么是三次,为什么不能是两次?不能是四次?
    • 说说TCP四次挥手过程
    • TCP挥手为什么需要四次呢?
    • 为什么不能把服务端发送的 ACK 和 FIN 合并起来,变成三次挥手?
    • TCP四次挥手过程中,为什么需要等待2MSL,才进入CLOSED关闭状态?
    • 谈谈TCP的粘包和拆包?
    • 说说TCP是如何确保可靠性的呢?
    • 说说TCP报文首部有哪些字段,其作用又分别是什么?
    • 聊聊TCP的流量控制和滑动窗口?
      • 为什么需要流量控制?
      • 怎么实现流量控制?
      • 聊聊滑动窗口
    • TCP 的拥塞控制是怎么实现的?
      • 慢启动算法
      • 拥塞避免算法
      • 拥塞发生算法
      • 快速恢复算法
    • 说说TCP的重传机制
      • 超时重传
      • 快速重传
      • 带选择确认的重传(SACK)
      • 重复SACK(D-SACK)
  • IP
    • IPv4 和 IPv6 有什么区别?
    • IP地址有哪些分类?
  • ARP协议
    • 说下ARP 协议的工作过程?
  • PING
    • PING 命令的作用是什么?
    • PING 命令的工作原理是什么?
    • PING 命令的工作流程?
  • WebSocket
    • 什么是 WebSocket?
    • WebSocket 和 HTTP 有什么区别?
    • WebSocket 的工作过程是什么样的?
  • 网络攻击相关
    • 什么是CSRF 攻击,如何解决?
    • 什么是XSS攻击,如何避免?
    • 聊聊SQL注入?
    • 说说SYN Flood攻击?
    • 什么是DoS、DDoS、DRDoS攻击?
  • 其他
    • 什么是CDN?CDN的工作原理是怎样的?
    • 如何实现跨域?

计算机网络基础

计算机网络体系结构(网络分层模型)

OSI 七层模型是什么?每一层的作用是什么?

OSI 七层模型 是国际标准化组织提出的一个网络分层模型。每层的作用如下:

  • 应用层
    为计算机用户提供服务
  • 表示层
    数据处理(编解码、加密解密、压缩解压缩)
  • 会话层
    管理(建立、维护、重连)应用程序之间的会话
  • 传输层
    为两台主机进程之间的通信提供通用的数据传输服务
  • 网络层
    路由和寻址
  • 数据链路层
    帧编码和误差纠正控制
  • 物理层
    透明地传送比特流

TCP/IP 四层模型是什么?每一层的作用是什么?

TCP/IP 四层模型 是目前被广泛采用的一种模型,我们可以将 TCP / IP 模型看作是 OSI 七层模型的精简版本,由以下 4 层组成:

  • 应用层
    对应于OSI参考模型的(应用层、表示层、会话层)。
  • 传输层
    对应OSI的传输层,为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。
  • 网络层
    对应于OSI参考模型的网络层,主要解决主机到主机的通信问题
  • 网络接口层
    与OSI参考模型的数据链路层、物理层对应。
    在这里插入图片描述

五层体系结构以及对应的协议

  • 应用层:对应于OSI参考模型的(应用层、表示层、会话层)。
  • 传输层:对应OSI参考模型的的传输层
  • 网络层:对应OSI参考模型的的网络层
  • 数据链路层:对应OSI参考模型的的数据链路层
  • 物理层:对应OSI参考模型的的物理层。
    在这里插入图片描述

为什么网络要分层,分层的好处?

我觉得主要有 3 方面的原因:

  • 各层之间相互独立:各层之间相互独立,各层之间不需要关心其他层是如何实现的,只需要知道自己如何调用下层提供好的功能就可以了(可以简单理解为接口调用)。
  • 提高了灵活性和可替换性:每一层都可以使用最适合的技术来实现,并且,每一层都可以根据需要进行修改或替换,而不会影响到整个网络的结构。(高内聚、低耦合的原则)
  • 大问题化小:分层可以将复杂的网络问题分解为许多比较小的、界线比较清晰简单的小问题来处理和解决。

常见网络协议有哪些,每一层常见协议有哪些?

应用层有哪些常见的协议?
  • HTTP(Hypertext Transfer Protocol,超文本传输协议):基于 TCP 协议,是一种用于传输超文本和多媒体内容的协议,主要是为 Web 浏览器与 Web 服务器之间的通信而设计的。当我们使用浏览器浏览网页的时候,我们网页就是通过 HTTP 请求进行加载的。
  • SMTP(Simple Mail Transfer Protocol,简单邮件发送协议):基于 TCP 协议,是一种用于发送电子邮件的协议。注意⚠️:SMTP 协议只负责邮件的发送,而不是接收。要从邮件服务器接收邮件,需要使用 POP3 或 IMAP 协议。
  • POP3/IMAP(邮件接收协议):基于 TCP 协议,两者都是负责邮件接收的协议。IMAP 协议是比 POP3 更新的协议,它在功能和性能上都更加强大。IMAP 支持邮件搜索、标记、分类、归档等高级功能,而且可以在多个设备之间同步邮件状态。几乎所有现代电子邮件客户端和服务器都支持 IMAP。
  • FTP(File Transfer Protocol,文件传输协议) : 基于 TCP 协议,是一种用于在计算机之间传输文件的协议,可以屏蔽操作系统和文件存储方式。注意 ⚠️:FTP 是一种不安全的协议,因为它在传输过程中不会对数据进行加密。建议在传输敏感数据时使用更安全的协议,如 SFTP。
  • SSH(Secure Shell Protocol,安全的网络传输协议):基于 TCP 协议,通过加密和认证机制实现安全的访问和文件传输等业务。
  • DNS(Domain Name System,域名管理系统): 基于 UDP 协议,用于解决域名和 IP 地址的映射问题。
传输层有哪些常见的协议?
  • TCP(Transmission Control Protocol,传输控制协议 ):提供 面向连接 的,可靠 的数据传输服务。
  • UDP(User Datagram Protocol,用户数据协议):提供 无连接 的,尽最大努力 的数据传输服务(不保证数据传输的可靠性),简单高效。
网络层有哪些常见的协议?
  • IP(Internet Protocol,网际协议):主要作用是定义数据包的格式、对数据包进行路由和寻址,以便它们可以跨网络传播并到达正确的目的地。
  • ARP(Address Resolution Protocol,地址解析协议):ARP 协议解决的是网络层地址和链路层地址之间的转换问题。ARP 协议解决了 IP 地址转 MAC 地址的一些问题。
  • ICMP(Internet Control Message Protocol,互联网控制报文协议):一种用于传输网络状态和错误消息的协议,常用于网络诊断和故障排除。例如,Ping 工具就使用了 ICMP 协议来测试网络连通性。
  • OSPF(Open Shortest Path First,开放式最短路径优先) ):一种内部网关协议(Interior Gateway Protocol,IGP),也是广泛使用的一种动态路由协议,基于链路状态算法,考虑了链路的带宽、延迟等因素来选择最佳路径。
  • RIP(Routing Information Protocol,路由信息协议):一种内部网关协议(Interior Gateway Protocol,IGP),也是一种动态路由协议,基于距离向量算法,使用固定的跳数作为度量标准,选择跳数最少的路径作为最佳路径。
  • BGP(Border Gateway Protocol,边界网关协议):一种用来在路由选择域之间交换网络层可达性信息(Network Layer Reachability Information,NLRI)的路由选择协议,具有高度的灵活性和可扩展性。

HTTP

从输入 URL 到页面展示到底发生了什么?(非常重要)

总体来说分为以下几个步骤:

  1. 在浏览器中输入指定网页的 URL。
  2. 浏览器通过 DNS 协议,获取域名对应的 IP 地址。
  3. 浏览器根据 IP 地址和端口号,向目标服务器发起一个 TCP 连接请求。
  4. 浏览器在 TCP 连接上,向服务器发送一个 HTTP 请求报文,请求获取网页的内容。
  5. 服务器收到 HTTP 请求报文后,处理请求,并返回 HTTP 响应报文给浏览器。
  6. 浏览器收到 HTTP 响应报文后,解析响应体中的 HTML 代码,渲染网页的结构和样式,同时根据 HTML 中的其他资源的 URL(如图片、CSS、JS 等),再次发起 HTTP 请求,获取这些资源的内容,直到网页完全加载显示。
  7. 浏览器在不需要和服务器通信时,可以主动关闭 TCP 连接,或者等待服务器的关闭请求。

HTTP请求的过程与原理

跟浏览器地址栏输入url到显示主页这道题有点类似。

  • 客户端进行DNS域名解析,得到对应的IP地址
  • 根据这个IP,找到对应的服务器建立连接(三次握手)
  • 建立TCP连接后发起HTTP请求(一个完整的http请求报文)
  • 服务器响应HTTP请求,客户端得到HTML代码
  • 客户端解析HTML代码,用HTML代码中的资源(如js,css,图片等等)渲染页面。
  • 服务器关闭TCP连接(四次挥手)

说说HTTP常用的状态码及其含义?

在这里插入图片描述
不管是不是面试需要,我们都要知道,日常开发中的这几个状态码的含义哈:
在这里插入图片描述

说说HTTP的状态码,301和302的区别?

302和301都有重定向的含义,但是它们也是有区别的。

  • 301:(永久性转移)请求的网页已被永久移动到新位置。服务器返回此响应时,会自动将请求者转到新位置。
  • 302:(暂时性转移)服务器目前正从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。此代码与响应GET和HEAD请求的301代码类似,会自动将请求者转到不同的位置

HTTP Header 中常见的字段有哪些?

这里列举几个常见的:

  • Accept
    能够接受的回应内容类型(Content-Types)
  • Accept-Charset
    能够接受的字符集
  • Connection
    该浏览器想要优先使用的连接类型
  • Content-Type
    请求体的多媒体类型(用于 POST 和 PUT 请求中)
  • Cookie
    之前由服务器通过 Set-Cookie发送的一个超文本传输协议 Cookie
  • Host
    Host 服务器的域名(用于虚拟主机),以及服务器所监听的传输控制协议端口号

HTTP 常用的请求方式,区别和用途?

在这里插入图片描述

POST和GET有哪些区别?

  • 语义(主要区别):GET 通常用于获取或查询资源,而 POST 通常用于创建或修改资源。
  • 幂等:GET 请求是幂等的,即多次重复执行不会改变资源的状态,而 POST 请求是不幂等的,即每次执行可能会产生不同的结果或影响资源的状态。
  • 格式:GET 请求的参数通常放在 URL 中,形成查询字符串,而 POST 请求的参数通常放在请求体中,可以有多种编码格式。GET 请求的 URL 长度受到浏览器和服务器的限制,而 POST 请求的 body 大小则没有明确的限制。
  • 缓存:由于 GET 请求是幂等的,它可以被浏览器或其他中间节点(如代理、网关)缓存起来,以提高性能和效率。而 POST 请求则不适合被缓存,因为它可能有副作用,每次执行可能需要实时的响应。
  • 安全性:GET 请求和 POST 请求如果使用 HTTP 协议的话,那都不安全,因为 HTTP 协议本身是明文传输的,必须使用 HTTPS 协议来加密传输数据。另外,GET 请求相比 POST 请求更容易泄露敏感数据,因为 GET 请求的参数通常放在 URL 中。

请简单说一下你了解的端口及对应的服务?

在这里插入图片描述

HTTP/1.0、HTTP/1.1、HTTP/2.0、HTTP3.0的区别

HTTP/1.1 (相对于HTTP/1.0)

1、连接方式
HTTP 1.0默认使用短连接,即每个请求/响应后都会关闭连接,而HTTP 1.1默认使用长连接,在同一个连接上可以发送多个请求和响应。

2、状态响应码
HTTP/1.1 中新加入了大量的状态码

3、管道机制
HTTP 1.1支持请求管道化,即在一个持久连接上可以同时发送多个请求,而HTTP 1.0不支持请求管道化。

问题:采用管道机制虽然可以发送多个请求,但是服务器必须按照接收请求的顺序依次发送对这些管道化请求的响应,以保证客户端能够区分出每次请求的响应内容。这就导致了假如服务端在处理一个请求时耗时比较长,那么后续请求的处理都会被阻塞住,会导致客户端迟迟收不到数据,这称为「队头堵塞」–在HTTP2中解决。

4、缓存控制
HTTP/1.1 在 HTTP/1.0 基础之上,增加了一些请求响应头,以更好的实现对缓存的控制。

  • 新增 Cache-Control 代替原先的 Expires;
  • 新增 If-None-Match 和 Etag 代替原先的 If-Modified-Since和 Last-Modified 。

5、断点续传
HTTP1.0中,存在一些浪费带宽的现象,例如客户端只是需要某个对象的一部分,而服务器却将整个对象送过来了,并且不支持断点续传功能, 而HTTP1.1则在请求头引入了range头域,它允许只请求资源的某个部分,即返回码是206(Partial Content)

6、Host 头
HTTP/1.1 引入了Host头,允许客户端指定请求的主机名,这使得在同一台服务器上托管多个域名成为可能。HTTP/1.0没有这个头字段。

HTTP/2.0 (相对于HTTP/1.1)

1、头部压缩
HTTP/1.1 支持Body压缩,Header不支持压缩。HTTP/2.0 支持对Header压缩,使用了专门为Header压缩而设计的 HPACK 算法,减少了网络开销。

客户端和服务器同时维护一张头信息表,高频出现的字段会存入这个表,生成一个索引号。发送报文时直接使用索引号替代字段。另外,索引表中不存在的字段使用压缩。同时,多个请求中,如果请求头相同,则后续请求只需要发送差异的部分,重复的部分无需再发送。

2、二进制帧
HTTP/2.0 使用二进制帧进行数据传输,而 HTTP/1.1 则使用文本格式的报文。二进制帧更加紧凑和高效,减少了传输的数据量和带宽消耗。

3、多路复用
HTTP/2.0 在同一连接上可以同时传输多个请求和响应(可以看作是 HTTP/1.1 中长链接的升级版本),互不干扰。HTTP/1.1 则使用串行方式,每个请求和响应都需要独立的连接,而浏览器为了控制资源会有 6-8 个 TCP 连接都限制。。这使得 HTTP/2.0 在处理多个请求时更加高效,减少了网络延迟和提高了性能。

  • 在 HTTP/2 中定义了流(Stream)的概念,它是二进制帧的双向传输序列,一个数据流对应着一个完整的请求-响应过程,在同一个请求响应过程中,往返的帧会分配一个唯一的流编号(Stream ID)。
  • 在流的支持下,HTTP/2 可以在一个 TCP 连接中传输多个请求或响应,而不用按照顺序一一对应(即实现多路复用),因为它们属于不同的流,所发送的帧头部都会携带 Stream ID,可以通过此 Stream ID 有效区分不同的请求-响应。
  • 因而 HTTP/2 解决了 HTTP/1.1 的队头阻塞问题,多个请求 - 响应之间没有了顺序关系,不需要排队等待,降低了延迟,大幅度提高了连接的利用率。

4、服务器主动推送
HTTP/2.0 支持服务器推送,可以在客户端请求一个资源时,将其他相关资源一并推送给客户端,从而减少了客户端的请求次数和延迟。而 HTTP/1.1 需要客户端自己发送请求来获取相关资源。

比如当客户端向服务器请求一个 HTML 文件后,服务器除了将此 HTML 文件响应给客户端外,还可以提前主动将此 HTML 中所依赖的 JS 和 CSS 文件推送给客户端,这样客户端在解析 HTML 时,无需耗费额外的请求去得到相应的 JS 和 CSS 文件。

HTTP/3.0 (相对于HTTP/2.0)

1、传输协议
HTTP/2.0 是基于 TCP 协议实现的,HTTP/3.0 新增了 QUIC 协议来实现可靠的传输,提供与 TLS/SSL 相当的安全性,具有较低的连接和传输延迟。你可以将 QUIC 看作是 UDP 的升级版本,在其基础上新增了很多功能比如加密、重传等等。HTTP/3.0 之前名为 HTTP-over-QUIC,从这个名字中我们也可以发现,HTTP/3 最大的改造就是使用了 QUIC。
2、连接建立
HTTP/2.0 需要经过经典的 TCP 三次握手过程(由于安全的 HTTPS 连接建立还需要 TLS 握手,共需要大约 3 个 RTT)。由于 QUIC 协议的特性(TLS 1.3,TLS 1.3 除了支持 1 个 RTT 的握手,还支持 0 个 RTT 的握手)连接建立仅需 0-RTT 或者 1-RTT。这意味着 QUIC 在最佳情况下不需要任何的额外往返时间就可以建立新连接。
3、队头阻塞
HTTP/2.0 多请求复用一个 TCP 连接,一旦发生丢包,就会阻塞住所有的 HTTP 请求。由于 QUIC 协议的特性,HTTP/3.0 在一定程度上解决了队头阻塞(Head-of-Line blocking, 简写:HOL blocking)问题,一个连接建立多个不同的数据流,这些数据流之间独立互不影响,某个数据流发生丢包了,其数据流不受影响(本质上是多路复用+轮询)。

  • HTTP/2 通过多路复用解决了 HTTP1.1 的队头阻塞问题,但其只是解决了 HTTP 这一层面的队头阻塞问题,底层仍然采用的 TCP 连接,HTTP/2 并没有解决 TCP 的队头阻塞问题。
  • TCP 是可靠的、面向字节流的协议。HTTP/2 的多个请求虽然可以跑在同一个 TCP 连接中,但如果出现丢包现象,TCP 就需要进行重传,这可能就会导致整个 TCP 连接上的所有流阻塞,直到丢的包重传成功,这就是 TCP 的『队头阻塞』问题。
  • 为了解决此问题,HTTP/3 底层不再使用 TCP,而是采用 UDP!而 UDP 是无连接的,多个流互相独立,之间不再有依赖,因而即使某个流发生了丢包,只会对该流产生影响,并不会使得其他流阻塞!

4、错误恢复
HTTP/3.0 具有更好的错误恢复机制,当出现丢包、延迟等网络问题时,可以更快地进行恢复和重传。而 HTTP/2.0 则需要依赖于 TCP 的错误恢复机制。

5、安全性
HTTP/2.0 和 HTTP/3.0 在加密通信实现上有所不同,HTTP/2.0 使用 TLS 协议进行加密,而 HTTP/3.0 基于 QUIC 协议,包含了内置的加密和身份验证机制,可以提供更强的安全性。

HTTP/1.0、HTTP/2.0 和 HTTP/3.0 的协议栈比较:
在这里插入图片描述

HTTPS流程是怎样的?

  • 客户端发起Https请求,连接到服务器的443端口。
  • 服务器必须要有一套数字证书(证书内容有公钥、证书颁发机构、失效日期等)。
  • 服务器将自己的数字证书发送给客户端(公钥在证书里面,私钥由服务器持有)。
  • 客户端收到数字证书之后,会验证证书的合法性。如果证书验证通过,就会生成一个随机的对称密钥,用证书的公钥加密。
  • 客户端将公钥加密后的密钥发送到服务器。
  • 服务器接收到客户端发来的密文密钥之后,用自己之前保留的私钥对其进行非对称解密,解密之后就得到客户端的密钥,然后用客户端密钥对返回数据进行对称加密,酱紫传输的数据都是密文啦。
    服务器将加密后的密文返回到客户端。
  • 客户端收到后,用自己的密钥对其进行对称解密,得到服务器返回的数据。

HTTP 与 HTTPS 的区别

  • 端口号:HTTP 默认是 80,HTTPS 默认是 443
  • URL 前缀:HTTP 的 URL 前缀是 http://,HTTPS 的 URL 前缀是 https://。
  • 安全性和资源消耗: HTTP是明文传输,HTTPS所有传输的内容都经过加密

HTTP 协议运行在 TCP 之上,所有传输的内容都是明文,客户端和服务器端都无法验证对方的身份。HTTPS 是运行在 SSL/TLS 之上的 HTTP 协议,SSL/TLS 运行在 TCP 之上。所有传输的内容都经过加密,加密采用对称加密,但对称加密的密钥用服务器方的证书进行了非对称加密。所以说,HTTP 安全性没有 HTTPS 高,但是 HTTPS 比 HTTP 耗费更多服务器资源。

说说什么是数字签名?什么是数字证书?

数字证书是指在互联网通讯中标志通讯各方身份信息的一个数字认证,人们可以在网上用它来识别对方的身份。它的出现,是为了避免身份被篡改冒充的。比如Https的数字证书,就是为了避免公钥被中间人冒充篡改。
在这里插入图片描述
数字证书构成

  • 公钥和个人等信息,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2040449.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【网编】——tcp编程

tcp流程 服务器 头文件&#xff1a; #include <sys/types.h> /* See NOTES */ #include <sys/socket.h> #include <errno.h> #include<stdio.h> #include <netinet/in.h> #include <netinet/ip.h> /* superset of previous */ #…

链接Mysql 报错connection errors; unblock with ‘mysqladmin flush-hosts‘错误的解决方法!亲测有效!

文章目录 前言一、使用 mysqladmin flush-hosts 命令解锁 IP 地址二、增加 max_connect_errors 参数三、检查连接错误的原因 前言 今天正常的对各大的测试服进行重启的时候发现每台服务器都启动失败&#xff01;查看日志发现每台服务器都报一下的错误 java.sql.SQLException:…

分布式光伏管理系统具有什么功能?有推荐吗?

1、项目进度管理 分布式光伏管理系统能够全面管理项目的进度&#xff0c;从初步沟通、收资踏勘、设计、施工到并网发电的全流程。系统通过可视化的项目进度管理工具&#xff0c;展示每一步的完成情况&#xff0c;包括员工跟进记录、关键节点时间等&#xff0c;帮助管理者从宏观…

windows下php安装kafka

下载zookeeper Kafka 依赖 Zookeeper 进行分布式协调&#xff0c;所以需要下载Zookeeper &#xff0c;当然你也可以使用kafka包里自带的一个默认配置的 Zookeeper。这里我们单独下载一个 访问Zookeeper官方下载页面在页面中找到最新的稳定版本&#xff0c;点击相应的下载链接…

Datawhale X 魔搭 AI夏令营第四期-魔搭生图task2学习笔记

精读代码 1.环境安装 !pip install simple-aesthetics-predictor!pip install -v -e data-juicer!pip uninstall pytorch-lightning -y !pip install peft lightning pandas torchvision!pip install -e DiffSynth-Studio 开始要先把代码中需要使用到的包、库用pip命令安装。…

Fomepay和Fomecard是不是跑路了?

最近几天&#xff0c;fomepay跑路的消息&#xff0c;很多人知道了&#xff0c;fomepay客服繁忙&#xff0c;也无法提现。更多的是&#xff0c;很多人刚充值&#xff0c;才看到跑路的消息&#xff0c;实在惨啊&#xff01; 而现在&#xff0c;如果之前没有登录过fomepay的话&…

安卓TV入门项目

android studio创建tv项目 下载android studio点此下载 配置环境变量&#xff1a; d盘新增Android文件夹&#xff0c;创建android-avd和android-sdk文件夹 环境变量名称&#xff1a;ANDROID_HOME 环境变量值&#xff1a;D:\Android\android-sdk 环境变量名称&#xff1a;ANDRO…

深入理解 Spring 三级缓存:解决单例 Bean 循环依赖的利器

目录 一、什么是循环依赖&#xff1f; 二、关于传说中的三级缓存 1.基本概念&#xff1a; 2.三级缓存是哪三级&#xff1f; 3.【举个例子】那三级缓存是怎么解决上述代码例子中的A、B互相依赖呢&#xff1f; 详细过程&#xff1a;&#xff08;理解用&#xff09; 简约版…

【专题】2024年7月人工智能AI行业报告合集汇总PDF分享(附原数据表)

原文链接:https://tecdat.cn/?p37350 随着人工智能技术的飞速发展&#xff0c;AI已经成为当今时代的重要驱动力。本报告将聚焦于人工智能AI行业的最新动态&#xff0c;涵盖客户服务、体验营销、资产管理以及国产AI大模型应用等多个领域。通过深入研究和分析&#xff0c;我们…

【Python学习-UI界面】PyQt5 小部件5-QCheckBox

样式如下: 当将QCheckBox对象添加到父窗口时&#xff0c;文本标签之前会出现一个矩形框。 和QRadioButton一样&#xff0c;它也是一个可选择的按钮。 它通常用于用户被要求选择一个或多个可用选项的场景。 不同于单选按钮&#xff0c;复选框默认情况下不是互斥的。 为了限制…

Golang 与 Java:编程语言比较及如何选择

Golang 与 Java&#xff1a;哪种语言更好&#xff1f;我们的详细比较指南涵盖了语法、性能和流行度方面的主要差异&#xff0c;以帮助您做出决定。 在规划项目时&#xff0c;有许多编程语言可供选择。但一开始就选择正确的语言是成功启动或交付的关键。选择错误的语言&#xff…

用R语言进行数据类型的检查和基础转换

下面内容摘录自《R 语言与数据科学的终极指南》专栏文章的部分内容&#xff0c;每篇文章都在 5000 字以上&#xff0c;质量平均分高达 94 分&#xff0c;看全文请点击下面链接&#xff1a; 4章8节&#xff1a;用R做数据重塑&#xff0c;行列命名和数据类型转换-CSDN博客 欢迎…

servlet的执行顺序

执行的时候Tomcat先初始化 然后调用 server 根据server来回调请求方式下面会追入源码解释 package com.haogu.servlet;import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.…

【C++二分查找】1954. 收集足够苹果的最小花园周长

本文涉及的基础知识点 C二分查找 LeetCode1954. 收集足够苹果的最小花园周长 给你一个用无限二维网格表示的花园&#xff0c;每一个 整数坐标处都有一棵苹果树。整数坐标 (i, j) 处的苹果树有 |i| |j| 个苹果。 你将会买下正中心坐标是 (0, 0) 的一块 正方形土地 &#xff…

Windows平台RTSP|RTMP播放器如何实现实时录像功能

技术背景 RTSP、RTMP直播播放&#xff0c;这里不再赘述&#xff0c;我们可以很轻松的实现毫秒级的延迟体验&#xff0c;这里讲的是如何实现RTSP、RTSP流的实时录像功能。 我们理解的录像&#xff0c;可能觉得&#xff0c;只要有个开始录像、停止录像接口就够了&#xff0c;实…

mysql速起架子

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz 下载mysql tar xvJf mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz 解压 mv mysql-8.0.21-linux-glibc2.12-x86_64 mysql-8.0 改名 去到bin目录 cd bin mkdir data gr…

【48 Pandas+Pyecharts | 2024年巴黎奥运会奖牌数据分析可视化】

PandasPyecharts | 2024年巴黎奥运会奖牌数据分析可视化 文章目录 &#x1f3f3;️‍&#x1f308; 1. 导入模块&#x1f3f3;️‍&#x1f308; 2. Pandas数据处理2.1 读取数据2.2 处理奖牌数据2.3 统计各参数国家/地区奖牌数据 &#x1f3f3;️‍&#x1f308; 3. Pyecharts数…

《Unity3D网络游戏实战》通用服务器框架

服务端程序的两大核心是处理客户端的消息和存储玩家数据 模块划分 游戏流程 连接阶段&#xff1a;客户端调用Connect连接服务端即为连接阶段。连接后双端即可通信&#xff0c;但服务端还不知道玩家控制的是哪个角色。于是客户端需要发送一条登录协议&#xff0c;协议中包含用户…

【Rust】使用开源项目搭建瓦片地图服务

本文通过获取在线和离线地图数据&#xff0c;使用开源Rust项目搭建瓦片地图服务&#xff0c;并使用DevExpress的MapControl控件使用自建地图服务 获取地图数据 获取地图数据有很多种方式&#xff0c;这里分别用在线和离线地图数据举例说明 在线下载瓦片地图 打开在线瓦片地…

Java开发代码规范文档

一、命令规范 包命名规范 包Package的作用是将功能相似或相关的类或者接口进行分组管理&#xff0c;便于类的定位和查找&#xff0c;同时也可以使用包来避免类名的冲突和访问控制&#xff0c;使代码更容易维护。通常&#xff0c;包命使用小写英文字母进行命名&#xff0c;并使…