计算机网络-数据交换方式(电路交换 报文交换 分组交换及其两种方式 )
文章目录
- 为什么要数据交换?
- 总览
- 电路交换
- 电路交换的各个阶段
- 建立连接
- 数据传输
- 释放连接
- 电路交换的特点
- 电路交换的优缺点
- 报文交换
- 报文交换流程
- 报文交换的优缺点
- 分组交换
- 分组交换流程
- 分组交换的优缺点
- 数据交换方式的选择
- 分组交换的两种方式
- 数据报方式
- 数据报方式的特点
- 虚电路方式
- 建立连接 (与电路交换类似)
- 数据传输 (与电路交换类似)
- 数据传输 (与电路交换类似)
- 虚电路方式的特点
- 数据报&虚电路
- 小结
为什么要数据交换?
如果每两两连接,那么链路太多了。所以采用交换设备
交换设备再互相形成链路就能实现更多计算机的通信
总览
电路交换
电路交换的各个阶段
建立连接
首先A向其连接的交换设备A发送呼叫请求,该请求包含了源主机A和目的主机B的地址
然后交换设备A通过路由选择算法。选择下一步往哪里走,然后将A给它的呼叫请求转发给下一个节点交换设备B
然后交换设备B通过路由选择算法,。选择下一步往哪里走,然后将A给它的呼叫请求转发给下一个节点交换设备C
然后交换设备C通过路由选择算法,。选择下一步往哪里走,然后将A给它的呼叫请求转发给下一个节点交换设备D
然后交换设备D直接转发呼叫请求给B
如果B可以接收A的连接请求,就会按照原路返回发送呼叫应答
A接收到后,A和B的连接线路建立成功
数据传输
此时A和B是全双工的通信方式
并且链路都是之前确定的线路
释放连接
按照之前的线路A发送释放请求
B接收到释放请求后,返回一个释放应答,也按照原路返回到A,并且会依次断掉各段连接(如送到D,就断掉D和B的连接)
电路交换的特点
电路交换是一种通信网络中使用的交换技术,具有以下显著特点:
- 建立专用通路:在通信双方之间建立一个专用的通信路径,这条路径会一直保持开放状态直到通信结束。
- 信息传送单位:电路交换中,信息传送的最小单位是时隙(time slot),即在预先分配的时间槽内进行数据传输。
- 端对端通信:电路交换实现的是端对端的通信,这意味着一旦电路建立,数据可以直接在两个终端之间传输。
- 资源分配方式:电路交换按照某种方式动态地分配传输线路的资源,一旦电路建立,该资源就被这对通信双方独占。
- 应用场景:电路交换主要应用于电话通信网中,完成电话交换,已有100多年的历史。它也是最早出现的一种交换方式,并且应用非常普遍。
总的来说,电路交换的特点在于为通信双方提供一条专用的、持续的通信路径,这种方式适用于需要连续、稳定通信的场景,如传统电话通话
独占资源:建立的链路不能被其他资源所使用
适用大量的数据传输:因为需要花费一定时间建立连接,如果传输太少了,那么有点花不来
电路交换的优缺点
线路被独占的,所以传输直接按照线路来,所以时延小
顺序传送,无失序:相当于是流水线一样的,流水线就是线路,数据放到上面后,就传到目标主机那里(先放先到)。所以说是顺序传送,没有失序问题
电路交换的交换设备主要采用交换机
- 缺乏数据存储能力:由于电路交换是实时建立连接的,它不具备数据存储的能力。这意味着如果通信过程中出现任何中断或错误,数据可能会丢失,而且无法像分组交换那样进行重传或纠错。
- 难以平滑通信量:电路交换的资源被通信双方独占,即使在通信线路空闲时,也不能供其他用户使用,这导致信道利用率低。因此,当通信量波动较大时,电路交换难以实现资源的动态分配和优化,不如分组交换那样能够有效地平滑通信量。
数据直达所以如果设备类型不同,可能无法识别处理这些数据
报文交换
报文就是你单次发送给对方的东西(如发条语音给对方,语音就是报文,发条信息给对方,信息就是报文,发个文件给对方,文件就是报文)
报文交换流程
传送的信息+报头=报文
首先到交换设备A
等输出电路空闲时:应该就是可以开始找下一个节点和发送报文出去
路由信息:交换设备有路由表,根据这个表判断走哪个节点距离目的主机更近。此时发现走交换设备B比较短
到达交换设备B
注意报文交换方式所有线路都可以传输其他用户的报文,不是说某个线路只能由某个用户所使用。其线路对应的限制就是带宽。如果该线路传输的各个用户的报文的数据量超过带宽,此时这个线路被认为是比较繁忙的。此时会需要交换设备暂存这个报文,等线路空闲一些的时候再传(存储转发)
到达B
报文交换的优缺点
用户可随时发送报文:就是不需要等连接建立才可以发送了
动态分配路线:平滑通信量。假设A到B的数据量很多, 同时A到C的数据量比较少,且C也能到目的主机 ,此时交换设备A通过动态选择发送报文给交换设备C
注意此时第四个优点中占用信道也不是独占
报文交换之所以能够同时发往多个目的地址,主要是因为它提供了多目标服务的能力。这种能力使得一个报文可以被复制并发送到多个预定的接收者,这在电路交换中是很难实现的,电路交换中相当于把一封信传来传去。所以最后只能由一个人接收到。报文交换就相当于是可以把一封信复制然后再传给别人,所以最后可以由很多人接收到。
具体来说,以下是一些详细的解释:
- 存储转发机制:报文交换网络中的每个节点都有存储功能,可以暂时保存经过的报文。当报文到达一个节点时,它会先被存储下来,然后根据报文中的目的地址信息进行转发。这种机制使得报文可以在节点处被复制并发送到不同的目的地。
- 灵活的路由选择:报文交换允许动态路由选择,即报文在传输过程中可以根据网络状况选择最佳的路径。这种灵活性使得报文可以根据需要被发送到多个目的地,而不受固定路径的限制。
- 无需建立连接:与电路交换不同,报文交换不需要预先建立固定的通信路径。这意味着报文可以直接被发送到多个目的地,而不需要在发送前建立多个连接。
实时:可以理解为很快反应
分组交换
分组交换流程
此时大数据块不切割就是报文交换了
分组后
编号是分组编号,目的主机用来重组分组的
接收到第一个分组后,进行差错检测以及路由选择,假设此时选了上面的路
接收到第二个分组后,进行差错检测以及路由选择,假设此时也选了上面的路
接收到第三个分组后,进行差错检测以及路由选择,此时由于一二分组都走了上面的路,那么上面的路有些拥堵了,所以走到下面的路了
最后按照这样的逻辑到达目的主机后,目的主机根据编号重组
分组交换的优缺点
在分组交换中,交换节点对存储器的管理之所以可以简化为对缓冲区的管理,是因为分组长度固定,分组交换网络中的分组长度通常是固定的,这意味着每个分组所需的缓冲区大小也是固定的。这种固定的大小使得交换节点可以预先分配固定大小的缓冲区给每个到来的分组,从而简化了存储器的管理过程。
减少等待发送时间:就是说缓冲区中下一个分组等待发送前一个分组的时间比较短
分组小:出错概率自然小,重发数据量也小
分组交换适用于突发式数据通信。
分组交换技术通过将数据划分为多个小的、等长的数据段,并在每个数据段前加上必要的控制信息作为首部,形成了一个个分组。这种机制使得分组交换网络能够高效地处理突发性数据流量。以下是分组交换适用于突发式数据通信的几个原因:
- 资源利用效率高:分组交换不需要预先占用整条通信链路的资源,只有当分组在某段链路上传送时才占用该段链路的资源。这意味着在没有数据传输时,链路资源可以被其他通信所使用,从而提高了资源的利用效率。
- 灵活性强:分组交换采用存储转发技术,允许交换机将接收到的分组暂时存储下来,在目的方向路由上排队,等待转发。这种机制使得网络能够更好地适应流量的波动,即使在突发流量情况下也能保持较高的传输效率。
- 适应性好:由于分组短小,分组交换特别适用于计算机之间的突发式数据通信。在突发式通信中,数据往往是不连续的,分组交换能够快速响应这种不连续性,实现数据的快速传输。
- 容错能力强:分组交换网络中的每个分组都包含有完整的地址信息和控制信息,这使得即使部分分组在传输过程中丢失或出错,也能够独立重传或修正,而不会影响整个数据流的传输。
- 优先级管理:分组交换网络可以根据分组的紧急程度为不同的分组分配不同的优先级,紧急数据可以得到即时传送,非常适合突发性紧急数据的传输需求。
尽管分组交换在处理突发式数据通信方面具有优势,但它也存在一些缺点,如存储转发时延和结点交换机需要更强的处理能力。不过,这些缺点并不妨碍分组交换成为现代通信网络中处理突发式数据通信的有效方式。
分组交换的传输时延之所以比报文交换的时延少,主要是因为分组交换采用了较小的数据单元进行传输。具体来说,分组交换的优势在于:
- 更小的传输单元:分组交换将数据分割成较小的分组(数据包),这些分组相对于完整的报文来说更短,因此传输时间更快。
- 并行处理能力:由于分组是独立的,它们可以在网络中的不同路径上并行传输,而不必等待整个报文传输完毕,这样就减少了传输延迟。
- 缓冲区管理效率:分组交换中,分组长度固定,这使得缓冲区更容易管理,交换机可以快速地处理和转发分组,减少了在节点的处理时间。
- 排队时延降低:在分组交换中,由于分组较小,即使网络流量较大,分组在队列中的等待时间也会相对较短,这降低了排队时延。
- 容错能力:分组交换允许单个分组独立处理,如果发生错误,只需重传出错的分组,而不是整个报文,这也有助于减少整体的传输时延。
总的来说,分组交换通过将数据分成小的单元进行传输,不仅提高了网络的传输效率,还减少了传输时延,使其成为现代通信网络中广泛采用的一种数据传输方式。
当分组交换采用数据报服务:具体来说,数据报服务是分组交换的一种形式,它不要求在数据传输前建立固定的通信路径。在这种服务中,每个分组都独立选择路由,可能通过不同的路径到达目的地。这种方式的优点在于其灵活性和快速性,因为它不需要预先建立和维护一个固定的通信路径。然而,这也带来了一些挑战,比如分组可能会失序、丢失或重复,需要在目的节点重新组装成原始报文。
数据交换方式的选择
可以看到报文交换需要等到报文都到达下一个节点后下一个节点才可以进行相应处理,而分组交换不需要,其当前节点发送下一个分组的同时,上一个发送的分组到达的节点也可以发送该分组到达下一个节点。所以可以看出分组交换时延比报文交换更小
时延小:所以适合突发式的数据通信的快速处理
分组交换的两种方式
数据报方式
数据报方式的特点
之前说的分组交换都是按照数据报方式
同一报文到达目的会乱序重复与丢失等相关情况,所以需要分组编号来对应处理
在网络通信中,交换节点可能会丢弃部分分组,这种情况通常发生在网络拥塞或故障时。当交换节点的缓存空间不足,无法存储更多的分组时,它可能会根据一定的策略丢弃部分分组,以保持网络的正常运行。
丢弃分组可能会对数据传输造成一定的影响,如导致数据丢失、传输延迟增加等问题。因此,在设计网络系统时,需要考虑到这种情况,并采取相应的措施来应对。
一种常见的方法是在分组中加入序列号和校验和等信息,以便在接收端检测和修复丢失的分组。此外,一些网络协议还提供了重传机制,允许发送方在未收到确认信息时重新发送分组。
虚电路方式
与电路交换的方式很像
建立连接 (与电路交换类似)
呼叫请求和呼叫应答都是一个分组
转发到下个节点,下个节点根据路由算法再转发到下一个节点
主机B接收到后,再按原路返回到呼叫应答
数据传输 (与电路交换类似)
传输的是分组,每个分组不需要携带目的地址等信息,因为连接建立后,线路固定了,只能沿路线走
此时数据传输时每个分组携带的虚电路号:标识哪条线路
数据传输 (与电路交换类似)
主机A发送释放请求,主机B返回释放应答,并且逐段释放虚电路
虚电路方式的特点
电路交换是物理连接,而虚电路是逻辑连接。具体分析如下:
- 电路交换:是一种在通信双方之间建立专用物理通路的通信方式。这种连接是物理的,因为它涉及到实际的物理线路,这些线路在通信过程中被独占,直到通信结束。电路交换的特点是面向连接,即在数据传输之前需要建立一个固定的物理路径,这个路径在整个通信过程中保持开放和不变。
- 虚电路:是一种在网络中建立的虚拟连接,它并不涉及物理线路的独占。虚电路通过在网络中的多个节点之间建立一系列的逻辑关联来实现,这些逻辑关联可以看作是在物理网络之上的“虚拟”路径。虚电路的连接是临时性的,会话结束后,这种连接就会被释放,而且一条物理线路可以支持多条虚电路的逻辑连接。
链路依然是共享的,虚电路不是独占的,不像电路交换那样
数据报&虚电路
数据报和虚电路的可靠性保证机制不同,具体如下:
数据报的可靠性保证:
- 用户主机保证:在数据报服务中,网络层提供的是尽最大努力交付的服务,不保证分组的可靠传输。因此,可靠性通常由用户主机来保证。这意味着用户需要自己处理分组的出错、丢失、重复和失序问题。例如,通过在高层协议(如TCP)中实现确认、重传和排序机制来确保数据的完整性和顺序性。
- 完整地址:每个数据报分组都包含终点的完整地址,这使得每个分组都可以独立路由,增加了网络的灵活性。但是,这也意味着每个分组都需要携带额外的路由信息,这会增加开销。
虚电路的可靠性保证:
- 网络保证:虚电路服务是面向连接的,网络负责维护这条逻辑上的连接,通常能提供较为可靠的数据传输。一旦建立连接,所有分组按照同一路由进行传输,网络中的节点会维护这个连接的状态,从而保证了数据传输的可靠性和顺序性。
短的虚电路信号:在虚电路中,连接建立后,每个分组只需使用 - 短的虚电路号来标识自己,减少了头部开销。同时,由于分组沿相同的路径传输,网络可以提供流量控制和差错控制,进一步提高了通信的可靠性。
总的来说,数据报服务的可靠性主要依赖于用户主机的处理,而虚电路服务的可靠性则由网络本身来保证。
数据报和虚电路在差错处理和流量控制方面具有不同的机制和策略。
数据报的差错处理和流量控制:
- 差错处理:在数据报服务中,每个分组都是独立传输的,因此差错处理通常是由目标主机来负责的。目标主机需要对每个收到的数据报进行差错检测,通常使用校验和或CRC检查。如果发现错误,数据报将被丢弃,并可能要求重传。重传的策略取决于高层协议,如TCP会使用确认和超时机制来实现可靠的传输。
- 流量控制:数据报服务本身并不提供流量控制机制。流量控制通常是由高层协议实现的,例如TCP通过滑动窗口机制来控制数据的发送速率,以适应网络的拥塞情况和接收方的处理能力。
虚电路的差错处理和流量控制:
- 差错处理:虚电路服务提供了更可靠的通信方式。一旦建立连接,所有分组按照同一路由进行传输,网络中的节点会维护这个连接的状态,并进行差错检测。如果某个分组出现错误,网络可以采取适当的行动,如请求重传或报告错误。这种机制确保了数据传输的可靠性和完整性。
- 流量控制:虚电路服务通常提供流量控制机制,以确保发送方不会超过接收方的处理能力或网络的容量。这可以通过一些技术来实现,如缓冲区管理和窗口机制。例如,发送方可能会根据从接收方接收到的反馈信息调整数据的发送速率。
总的来说,数据报和虚电路在差错处理和流量控制方面有不同的策略和机制。数据报依赖于目标主机和高层协议来进行差错处理和流量控制,而虚电路则由网络本身提供这些功能。
小结
相关文章:

计算机网络-数据交换方式(电路交换 报文交换 分组交换及其两种方式 )
文章目录 为什么要数据交换?总览电路交换电路交换的各个阶段建立连接数据传输释放连接 电路交换的特点电路交换的优缺点 报文交换报文交换流程报文交换的优缺点 分组交换分组交换流程分组交换的优缺点 数据交换方式的选择分组交换的两种方式数据报方式数据报方式的特…...

【C++入门到精通】特殊类的设计 | 单例模式 [ C++入门 ]
阅读导航 引言一、设计模式概念(了解)二、单例模式1. 饿汉模式(1)概念(2)模拟实现(3)优缺点(4)适用场景 2. 懒汉模式(1)概念ÿ…...

【创建vue项目的两种方式】
Vue环境搭建 NodeJs安装包安装淘宝镜像 环境搭建webpack安装全局安装vue/cli查看模板创建项目1.webpack2. vue-cli NodeJs安装包 下载链接:官网链接 下载下来后,直接傻瓜式的安装即可。 通过在cmd控制台输入以下命令查看是否安装成功 node -v因为适配某…...

2. HarmonyOS应用开发DevEcoStudio准备-1
2. HarmonyOS应用开发DevEcoStudio准备-1 下载 DevEco Studio 进入HUAWEI DevEco Studio产品页产品页。 单击下载列表右侧的按钮,下载 DevEco Studio。 安装 DevEco Studio 下载完成后,双击下载的 deveco-studio-xxxx.exe,进入 DevEco St…...

《二叉树》——3(层序遍历)
目录 前言: 层序遍历: 解析: 前言: 本文主讲链式二叉树的层序遍历,在前面的张篇blog我们初步实现了链式二叉树递归部分的内容,对于递归算法的学习和思维方式我们仍然需要不断加强,所以将对链式二叉树进行…...

HarmonyOS应用开发者基础认证考试答案
HarmonyOS应用开发者基础认证考试答案 一、判断题 1.Ability是系统调度应用的最小单元,是能够完成一个独立功能的组件。一个应用可以包含一个或多个Ability。 正确(True) 2.所有使用Component修饰的自定义组件都支持onPageShow,onBackPress和onPageHide…...

【前端素材】bootstrap3 实现地产置业公司source网页设计
一、需求分析 地产置业公司的网页通常是该公司的官方网站,旨在向访问者提供相关信息和服务。这些网页通常具有以下功能: 公司介绍:网页通常包含有关公司背景、历史、核心价值观和使命等方面的信息。此部分帮助访问者了解公司的身份和目标。 …...

C++ 数论相关题目 博弈论 Nim游戏
给定 n 堆石子,两位玩家轮流操作,每次操作可以从任意一堆石子中拿走任意数量的石子(可以拿完,但不能不拿),最后无法进行操作的人视为失败。 问如果两人都采用最优策略,先手是否必胜。 输入格式…...

机器学习---无偏估计
1. 如何理解无偏估计 无偏估计:就是我认为所有样本出现的概率⼀样。 假如有N种样本我们认为所有样本出现概率都是 1/N。然后根据这个来计算数学期望。此时的数学期望就是我们平常讲 的平均值。数学期望本质就 是平均值。 2. 无偏估计为何叫做“无偏”࿱…...

C语言基础13
今天是学习嵌入式相关内容的第十四天,以下是今日所学内容 1.结构体: 1.结构体类型定义 2.结构体变量的定义 3.结构体元素的访问 4.结构体的存储 内存对齐 结构体整体的大小必须为最大基本类型长度的整数倍 5.结构体作为函数参数 值传递 练习:定…...

【Java】Maven配置加载到全局
Maven配置加载到全局 <build><plugins><plugin><artifactId>maven-resources-plugin</artifactId><configuration><encoding>utf-8</encoding><useDefaultDelimiters>true</useDefaultDelimiters></configura…...

右手螺旋线定则
通电螺线管中的安培定则(安培定则二):用右手握住通电螺线管,让四指指向电流的方向,那么大拇指所指的那一端是通电螺线管的N极。...

2024 高级前端面试题之 React 「精选篇」
该内容主要整理关于 React 模块的相关面试题,其他内容面试题请移步至 「最新最全的前端面试题集锦」 查看。 React模块精选篇 1. 如何理解React State不可变性的原则2. JSX本质3. React合成事件机制4. setState和batchUpdate机制5. 组件渲染和更新过程6. Diff算法相…...

OSPF协议解析及相关技术探索(C/C++代码实现)
OSPF(开放最短路径优先)是一种用于自治系统(AS)内部的路由协议,它是基于链路状态算法的。OSPF的设计目的是为了提供一种可扩展、快速收敛和高效的路由解决方案。 OSPF概念和特点 概念 自治系统(AS&#…...

如何恢复已删除的照片?
在这篇综合文章中发现恢复丢失照片的有效且免费的方法。无论您使用的是智能手机、iPhone、Windows 计算机、Mac、SD 卡还是数码相机,我们都提供有关如何恢复已删除照片的分步说明。此外,学习一些有价值的技巧,以防止将来意外删除照片。 意外…...

VMware虚拟机安装macOS
VMware虚拟机安装macOS 文章目录 VMware虚拟机安装macOS先看效果一、准备工作①:镜像资源下载②:虚拟机③:安装macOS所必要的插件 二、开始安装①:创建新的虚拟机②:自定义硬件③:开启虚拟机 先看效果 一、…...

API管理协作工具:Apipost
相信无论是前端,还是后端的测试和开发人员,都遇到过这样的困难。不同工具之间数据一致性非常困难、低效。多个系统之间数据不一致,导致协作低效、频繁出问题,开发测试人员痛苦不堪。 API管理的难点在哪? 开发人员在 …...

GPT-SoVITS 本地搭建踩坑
GPT-SoVITS 本地搭建踩坑 前言搭建下载解压VSCode打开安装依赖包修改内容1.重新安装版本2.修改文件内容 运行总结 前言 传言GPT-SoVITS作为当前与BertVits2.3并列的TTS大模型,于是本地搭了一个,简单说一下坑。 搭建 下载 到GitHub点击此处下载 http…...

【教学类-34-02】20240130纸尺2.0 (A4横版5条,刻度25*5=125CM,有图案)
作品展示: 背景需求: 设计了纸尺的基本模板 【教学类-34-01】20240130纸尺1.0 (A4横版5条,刻度25*5125CM)-CSDN博客文章浏览阅读194次,点赞5次,收藏5次。【教学类-34-01】20240130纸尺1.0 &am…...

iText操作pdf
最近有个任务是动态的创建pdf根据获取到的内容,百度到的知识点都比较零散,官方文档想必大家也不容易看懂。下文是我做出的汇总 public class CreatePdfUtils {public static void create(){//准备File file new File("C:\\code\\base-project-back…...

关于SQLite 的下载与使用。配合python
win系统下: SQLite Download Page Precompiled Binaries for Windows sqlite-tools-win-x64-3450000.zip (4.77 MiB) 解压后,找个位置。然后设置环境变量指定位置。 可以手动建立.db文件。 也可以通过代码建立: 如下代码就是建立一个db文件。…...

java面向对象基础(面试)
一、面向对象基础 1. 面向对象和面向过程的区别 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。 2.创建一个对象用什么运算符?对象实体与对象引用有何不同? n…...

【C++修行之道】STL(初识list、stack)
目录 一、list 1.1list的定义和结构 以下是一个示例,展示如何使用list容器: 1.2list的常用函数 1.3list代码示例 二、stack 2.1stack的定义和结构 stack的常用定义 2.2常用函数 2.3stack代码示例 一、list 1.1list的定义和结构 list的使用频率不高&#…...

【环境配置】安装了pytorch但是报错torch.cuda.is_availabel()=Flase
解决思路:import torch正常,说明torch包安装正常,但是不能和gpu正常互动,猜测还是pytroch和cuda的配合问题 1.查看torch包所需的cuda版本 我的torch是2.0.1,在现在是比较新的包,需要12以上的cuda支持&…...

什么是模板方法模式?它的实现方式有哪些?
什么是模板方法模式?它的实现方式有哪些? 模板方法模式是一种行为型模式,它定义了一个操作中的算法骨架,而将算法的一些步骤延迟到子类中实现,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。 模…...

java:实现查询MySQL数据库中的数据,并导出excel、pdf类型文档(超详细)
查询MySQL数据库中数据,导出excel、pdf类型文档 1.数据库表格 CREATE TABLE user (id int NOT NULL AUTO_INCREMENT COMMENT 编号,name varchar(255) DEFAULT NULL COMMENT 姓名,age int DEFAULT NULL COMMENT 年龄,addr varchar(255) DEFAULT NULL COMMENT 住址1…...

Java后端须知的前端知识
Java后端须知的前端知识 HTML (超文本标记语言) W3C标准 结构:HTML表现:CSS行为:JavaScript 快速入门 <html><head><title></title></head><body><font color"red&q…...

Servlet基础之URL匹配规则
文章目录 URL 匹配规则几个容易混淆的规则精确匹配路径匹配扩展名匹配缺省匹配注意事项 1:匹配规则不能混用注意事项 2:"\/\*" 和 "/" 含义并不相同 URL 匹配规则 几个容易混淆的规则 servlet 容器中的匹配规则既不是简单的通配&am…...

【面试真题】Javascript 实现多条件过滤数组
场景: 有这么一个数组 [{a,123,b:345,c:456,d:t12},{a,234,b:345,c:thf2,d:t12}], 现在希望能够通过逗号分隔搜索值的输入方式,从数组中过滤出模糊匹配的数组元素。 解析: 可以使用 JavaScript 的 filter 函数和 indexOf 函数来实现这个功…...

spark广播变量
2024-1-24 广播变量特点 Broadcast Variable会将使用到的变量,只会为每个节点拷贝一份,不会为每个task进行拷贝,能够优化性能(在task数量比较大体现更明显),减少网络传输及内存消耗通过SparkContext的bro…...