当前位置: 首页 > news >正文

云计算基础,虚拟化原理

文章目录

  • 一、虚拟化
    • 1.1 什么是虚拟化
    • 1.2 虚拟化类型
  • 二 、存储虚拟化
    • 2.1 存储指标
    • 2.2 存储类型
    • 2.3 存储协议
    • 2.4 RAID
  • 三、内存 i/O虚拟化
    • 3.1 内存虚拟化
      • 基本概念
      • 地址空间转换原理
      • 内存共享与隔离原理
    • 3.2 I/O 虚拟化
      • 基本概念
      • 模拟(Emulation)方式
      • 半虚拟化(Para - virtualization)方式
      • 硬件辅助 I/O 虚拟化(Hardware - Assisted I/O Virtualization)方式
  • 四、网络虚拟化
  • 五、为什么虚拟化
    • 为什么
    • 发展趋势:`


一、虚拟化

1.1 什么是虚拟化

在这里插入图片描述
资源池化
在这里插入图片描述
在这里插入图片描述

1.2 虚拟化类型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二 、存储虚拟化

2.1 存储指标

在这里插入图片描述

IOPS(Input/Output Operations Per Second)

定义:IOPS 是指每秒进行的输入 /输出操作次数。
它主要用于衡量存储设备(如硬盘、固态硬盘等)在单位时间内能够处理的读写操作的数量。例如,一个存储设备的 IOPS 为 100,表示它每秒可以执行 100 次读取或者写入操作。 影响因素: 存储设备类型:固态硬盘(SSD)通常比机械硬盘(HDD)具有更高的 IOPS。这是因为 SSD 使用闪存芯片存储数据,数据的读写是通过电信号控制闪存芯片内的晶体管来实现的,其读写速度极快;而 HDD 是通过磁头在高速旋转的盘片上进行数据的读写操作,机械结构导致其读写速度相对较慢。
存储设备的内部架构
对于 SSD,其内部的闪存芯片通道数量、主控芯片性能等因素都会影响 IOPS。更多的闪存芯片通道可以同时进行数据传输,提高IOPS;高性能的主控芯片能够更好地调度和管理数据读写,优化 IOPS。 文件系统和数据块大小:不同的文件系统对 IOPS也有影响。例如,某些文件系统在处理小文件时可能具有较高的 IOPS,而在处理大文件时性能下降。同时,数据块大小也很关键,较小的数据块大小可能会导致更多的IOPS,因为每次读写的数据量小,操作频繁,但这也可能会增加系统开销。 应用场景: 数据库应用:在数据库系统中,高 IOPS是非常重要的。例如,对于一个频繁进行数据插入、更新和查询的在线交易数据库,大量的事务操作需要快速的读写支持。每一笔交易可能涉及多次数据读写,高IOPS 能够确保数据库系统快速响应,减少交易等待时间,提高系统的并发处理能力。 虚拟桌面基础架构(VDI):在 VDI环境中,多个用户通过虚拟桌面访问存储在服务器上的数据。当用户同时启动应用程序、加载文件等操作时,需要高 IOPS 来保证存储系统能够快速地为每个用户提供数据读写服务,避免用户体验的卡顿。

吞吐量(Throughput)

定义:吞吐量是指单位时间内成功地传输数据的数量。它通常以字节 / 秒(Bps)、千字节 / 秒(KBps)、兆字节 / 秒(MBps)或吉字节 / 秒(GBps)等单位来衡量。例如,一个网络连接的吞吐量为 10MBps,表示每秒可以成功传输 10兆字节的数据。
影响因素
网络带宽:这是影响吞吐量的一个关键因素。网络带宽就像是一条高速公路的宽度,带宽越高,能够同时传输的数据量就越大。例如,一个 100Mbps的网络连接比 10Mbps 的网络连接理论上具有更高的吞吐量。
传输协议和设备性能:不同的传输协议对吞吐量有不同的影响。例如,在网络传输中,TCP/IP协议的窗口大小、拥塞控制机制等都会影响数据传输的效率。同时,网络设备(如路由器、交换机等)的性能也很重要。高性能的设备能够更好地处理和转发数据,减少传输延迟,提高吞吐量。
数据传输的内容和格式:数据的类型(如文本、音频、视频等)和格式也会影响吞吐量。例如,传输未经压缩的高清视频数据需要比传输简单文本文件更高的吞吐量,因为视频数据量更大。
应用场景: 文件传输服务:在云存储服务或者企业内部的文件共享服务中,吞吐量决定了文件传输的速度。例如,当用户从云存储中下载一个大型文件(如
1GB 的高清电影)时,高吞吐量可以使文件在短时间内下载完成,提高用户体验。
数据中心内部的数据传输:在数据中心中,服务器之间需要大量的数据交换。例如,在分布式存储系统中,数据节点之间需要传输数据块进行数据备份、恢复和负载均衡等操作。高吞吐量能够确保这些数据传输过程高效进行,维持数据中心的正常运转。

相互制约的原理基础

从物理层面看: 存储设备或网络设备都有其物理极限。例如,存储设备的内部总线带宽、网络接口的速率等都是有限的。当追求高 IOPS时,每次读写操作的数据量可能较小,这就像在一个有限带宽的通道里频繁地发送小包裹。如果读写操作过于频繁(高IOPS),可能会因为频繁的请求处理而占用大量的系统资源,导致用于传输大量数据的资源减少,从而限制吞吐量。
反之,当重点关注吞吐量时,每次传输的数据量较大,这可能会导致设备忙于传输这些大数据块,而无法及时响应大量的小读写操作请求,从而降低IOPS。例如,在网络传输中,如果正在传输一个大型文件(以提高吞吐量),此时一些小的数据包(如控制指令等)的处理速度可能会变慢,影响IOPS。
从软件和协议层面看
操作系统和存储管理软件对设备的调度策略也会影响两者的关系。例如,文件系统的缓存机制,如果为了提高吞吐量而将大量数据缓存在内存中准备传输,可能会占用原本可以用于快速响应小读写操作的缓存空间,从而降低 IOPS。 网络传输协议中的窗口大小和拥塞控制机制也会产生制约。例如,TCP 协议中的拥塞窗口会根据网络状况动态调整每次传输的数据量。如果为了提高吞吐量而增大窗口大小,可能会在网络出现拥塞时,不仅导致吞吐量下降,还会因为需要处理大量的重传等问题而影响IOPS。
不同场景下的制约关系表现 数据库应用场景:
对于一个在线事务处理(OLTP)数据库,如银行的交易系统,高 IOPS 至关重要。因为系统需要快速处理大量的小读写操作,如账户余额查询、转账等。如果过度关注吞吐量,例如,采用一些会合并数据块传输的策略来提高数据传输效率,可能会导致单个小读写操作的响应时间变长,降低 IOPS,从而影响系统的交易处理速度和用户体验。
而在数据仓库应用场景下,数据加载和备份等操作更注重吞吐量。例如,在夜间进行数据仓库的数据批量加载时,需要传输大量的数据块。此时,如果存储设备或网络忙于处理大量小读写操作(高 IOPS),可能会导致数据加载速度变慢,吞吐量降低

2.2 存储类型

在这里插入图片描述

DAS:Direct-Attached Storage 开放系统的直连式存储。直连式存储依赖服务器主机操作系统进行数据的IO读写和存储维护管理,数据备份和恢复要求占用服务器主机资源(包括CPU、系统IO等),数据流需要回流主机再到服务器连接着的磁带机(库)。数据备份通常占用服务器主机资源20-30%,因此许多企业用户的日常数据备份常常在深夜或业务系统不繁忙时进行,以免影响正常业务系统的运行。直连式存储与服务器主机之间的连接通常采用SCSI连接

在这里插入图片描述
NAS:(Network Attached Storage:网络附属存储)NAS被定义为一种特殊的专用数据存储服务器。NAS本身能够支持多种协议(如NFS、CIFS、FTP、HTTP等),而且能够支持各种操作系统。
NAS其实是一个网络上的瘦服务器,对用户提供文件系统访问的能力NAS其实是一个网络上的瘦服务器,对用户提供文件系统访问的能力,管理存储介质和负责数据备份。平常我们在x86的服务器上开启samba服务,然后在windows上映射一个盘符到samba服务器上就可以像使用本地存储一样使用服务器上的存储,这时,这台服务器也可以看做是一台NAS服务器。直接挂载使用的(例如目前常用的NFS, CIFS文件系统) 侠义如共享文件

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
SAN和NAS两者还是有点难区别。NAS的文件系统在NAS设备这边,而SAN的文件系统还是在访问端。
NAS 可以看成放在网络上的文件夹,而SAN可以看作是网络上的磁盘,还需格式化系统,比如mkfs 个xfs ext4,自由度高。
在这里插入图片描述

NAS与SAN的关联
根据上面提到的NAS与SAN的区别,我们可以知道,SAN是对用户提供的是高速以块为单位的存储接口,而NAS为用户提供的是以文件为单位的存储接口。

可以说SAN可以看成是网络上的硬盘,NAS可以看成是网络上的文件系统。NAS拥有网络文件系统的优势,而SAN有底层高速数据块的存储优势,所以可以把两者结合起来使用,所以有了NAS-SAN这样的东西
在这里插入图片描述

2.3 存储协议

iSCSI是由IBM发明的基于以太网的存储协议,该协议与SUN的NFS协议都是为了解决存储资源共享问题的解决方案。两者意图一致,只不过两者是不同的实现方式,前者在客户机上呈现的是一个块设备,而后者则是一个目录树。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
iSCSI 协议

iSCSI(Internet Small Computer System Interface,发音为/ˈаɪskʌzi/),Internet小型计算机系统接口,又称为IP-SAN,是一种基于因特网及SCSI-3协议下的存储技术,由IETF提出,并于2003年2月11日成为正式的标准

概括的说,iSCSI是一种存储设备远程映射技术,它可以将一个远程服务器上的存储设备映射到本地,并呈现为一个块设备(大白话就是磁盘)。从普通用户的角度,映射过来的磁盘与本地安装的磁盘毫无差异。

这种映射方式基于是基于SCSI协议的,SCSI协议是计算机与外围设备(例如硬盘、光盘等)通信的协议。而iSCSI则是通过TCP协议对SCSI进行封装的一种协议,也就是通过以太网传输SCSI协议的内容。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.4 RAID

RAID 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。磁盘阵列是由很多块独立的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上提高传输速率。RAID通过在多个磁盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量(Throughput)
(1)通过对磁盘上的数据进行条带化,实现对数据成块存取,减少磁盘的机械寻道时间,提高了数据存取速度。
(2)通过对一个阵列中的几块磁盘同时读取,减少了磁盘的机械寻道时间,提高数据存取速度。
(3)通过镜像或者存储奇偶校验信息的方式,实现了对数据的冗余保护。

RAID-加粗样式逻辑卷lun
在这里插入图片描述
效率和可靠性
在这里插入图片描述
增加校验盘
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

三、内存 i/O虚拟化

3.1 内存虚拟化

在这里插入图片描述

基本概念

内存虚拟化是云计算和虚拟化技术中的一个关键部分。它的目的是在多个虚拟机(VM)之间高效地共享物理内存资源,使得每个虚拟机都认为自己拥有独立的、连续的物理内存空间,而实际上它们是共享主机的物理内存。
在这里插入图片描述

地址空间转换原理

物理地址和虚拟地址:在非虚拟化环境中,应用程序使用的是虚拟地址,通过内存管理单元(MMU)转换为物理地址来访问内存。在虚拟化环境下,情况变得更加复杂。虚拟机中的操作系统(Guest OS)管理着自己的虚拟地址空间(Guest Virtual Address,GVA),它认为自己在直接访问物理内存,但实际上这是一种假象。
影子页表(Shadow Page Table)机制:早期的内存虚拟化技术使用影子页表来实现地址转换。当 Guest OS 创建一个页表(将 GVA 映射到 Guest Physical Address,GPA)时,VMM(虚拟机监视器)会为其创建一个影子页表,用于将 GVA 直接映射到主机物理地址(Host Physical Address,HPA)。这种方法的缺点是性能开销较大,因为每次 Guest OS 更新页表时,VMM 都需要更新影子页表。
硬件辅助虚拟化(Hardware - Assisted Virtualization):现代处理器提供了硬件支持来简化内存虚拟化。例如,Intel 的 EPT(Extended Page Tables)和 AMD 的 RVI(Rapid Virtualization Indexing)技术。以 EPT 为例,它在硬件层面扩展了页表结构,使得 MMU 可以直接将 GVA 通过 Guest 页表和 EPT 转换为 HPA,减少了 VMM 的干预,大大提高了性能。

内存共享与隔离原理

内存共享: 为了提高内存利用率,内存虚拟化技术允许不同的虚拟机共享相同的物理内存页。例如,多个虚拟机运行相同的操作系统或相同的应用程序,它们的某些内存区域(如操作系统内核代码)是相同的。VMM 可以识别这些相同的内存区域,并将它们映射到相同的物理内存页,从而节省内存资源。
内存隔离: 虽然虚拟机之间共享物理内存,但必须保证它们之间的内存隔离,以防止一个虚拟机访问另一个虚拟机的内存数据。VMM 通过内存权限管理和地址空间划分来实现隔离。例如,通过设置页表项中的权限位,使得虚拟机只能访问自己被授权的内存区域。如果虚拟机试图访问未授权的区域,会触发处理器的异常机制,由 VMM 进行处理。

3.2 I/O 虚拟化

在这里插入图片描述

基本概念

I/O 虚拟化是一种在虚拟化环境中管理和共享 I/O 设备(如磁盘、网络接口卡、USB 设备等)的技术。它的目的是让多个虚拟机(VM)能够高效地共享物理 I/O 设备,并且每个虚拟机都感觉自己拥有独立的、专用的 I/O 设备,就像在非虚拟化的物理机环境中一样。

模拟(Emulation)方式

原理:在 I/O 虚拟化的早期阶段,模拟是一种常用的方法。VMM(虚拟机监视器)会在软件层面模拟各种 I/O 设备的功能。例如,对于一个虚拟机中的虚拟磁盘设备,VMM 会模拟磁盘控制器的行为,包括接收来自虚拟机操作系统(Guest OS)的 I/O 请求(如读 / 写操作),然后将这些请求转换为对真实物理磁盘的操作。
示例:假设一个虚拟机中的应用程序想要从虚拟磁盘的某个扇区读取数据。Guest OS 会向虚拟磁盘控制器发送一个读请求,这个请求会被 VMM 截获。VMM 会解析这个请求,将其转换为对物理磁盘的实际读操作,包括定位磁盘磁头、读取数据等过程。读取到的数据再通过 VMM 返回给虚拟机中的应用程序。这种模拟方式的优点是兼容性好,可以支持各种不同类型的 Guest OS 和 I/O 设备,但缺点是性能较低,因为大量的软件模拟操作会产生较高的 CPU 开销。

半虚拟化(Para - virtualization)方式

原理:半虚拟化技术要求 Guest OS 进行一定的修改,以使其能够更好地与 VMM 协作完成 I/O 操作。在这种模式下,Guest OS 知道自己运行在虚拟化环境中,并且会使用专门的 I/O 接口与 VMM 进行通信。例如,Guest OS 会通过特定的 Hypercall(超级调用)来发送 I/O 请求,而不是像在物理机环境中那样直接与 I/O 设备交互。
示例:当虚拟机中的应用程序发起一个 I/O 操作时,Guest OS 会识别这个操作,并通过 Hypercall 将请求发送给 VMM。VMM 收到请求后,直接与物理 I/O 设备进行交互,完成操作后将结果返回给 Guest OS。这种方式相比模拟方式,减少了中间的软件模拟环节,提高了性能,但它需要对 Guest OS 进行修改,限制了其通用性。

硬件辅助 I/O 虚拟化(Hardware - Assisted I/O Virtualization)方式

原理:现代处理器和 I/O 设备提供了硬件支持来实现 I/O 虚拟化。例如,Intel 的 VT - d(Virtualization Technology for Directed I/O)和 AMD 的 IOMMU(Input/Output Memory Management Unit)技术。这些技术通过在硬件层面提供 I/O 设备的隔离和地址转换功能,使得每个虚拟机可以直接访问物理 I/O 设备的一部分资源,同时保证设备之间的隔离和安全性。
示例:以网络接口卡(NIC)为例,通过硬件辅助 I/O 虚拟化,每个虚拟机可以有自己独立的直接内存访问(DMA)区域,并且可以直接向 NIC 发送和接收数据包,而 IOMMU 会负责将虚拟机的 I/O 地址转换为物理 I/O 地址,确保每个虚拟机只能访问自己被授权的 I/O 设备资源,从而提高了 I/O 操作的效率和安全性。

四、网络虚拟化

虚拟化网络是云计算的关键技术之一,它将物理网络资源虚拟化为多个逻辑网络。例如,在一个数据中心里,通过软件定义网络(SDN)技术,可以把物理交换机、路由器等设备提供的网络功能进行抽象,划分出多个虚拟网络,每个虚拟网络可以分配给不同的用户或应用。
这样做的好处是提高网络资源的利用率,就像把一套大房子(物理网络)隔成多个小房间(虚拟网络),每个小房间可以租给不同的人使用,从而实现资源的高效利用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、为什么虚拟化

为什么

在这里插入图片描述
在这里插入图片描述


发展趋势:`

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

相关文章:

云计算基础,虚拟化原理

文章目录 一、虚拟化1.1 什么是虚拟化1.2 虚拟化类型 二 、存储虚拟化2.1 存储指标2.2 存储类型2.3 存储协议2.4 RAID 三、内存 i/O虚拟化3.1 内存虚拟化基本概念地址空间转换原理内存共享与隔离原理 3.2 I/O 虚拟化基本概念模拟(Emulation)方式半虚拟化…...

浮点数在C语言开发中为什么不精确?

在C语言开发中,浮点数的精度问题是一个常见的陷阱,尤其是对于刚接触编程的开发者来说,可能会对浮点数的行为感到困惑。为什么0.1 0.2不等于0.3?为什么浮点数计算会出现微小误差?本文将从计算机底层原理出发&#xff0…...

ChatGPT网络错误如何解决

在当今的信息化社会,网络技术已无处不在。无论是日常生活中的在线购物,还是工作中的远程会议,网络的稳定性和可靠性成为了我们无时无刻不在关注的重要问题。而在智能技术的快速发展中,像ChatGPT这样的人工智能模型,因其…...

Vue3初学之插槽(slot)使用

在 Vue 3 中,插槽(Slots)是一种强大的内容分发机制,允许你在组件中定义可替换的内容区域,从而使组件更加通用和灵活。以下是 Vue 3 中插槽的几种常见用法: 默认插槽 默认插槽是最基本的插槽类型&#xff0…...

使用PVE快速创建虚拟机集群并搭建docker环境

安装Linux系统 这里以安装龙蜥操作系统AnolisOS8.9为例加以说明。 通过PVE后台上传操作系统ISO镜像。 然后在PVE上【创建虚拟机】,选定上传的龙蜥操作系统镜像进行系统安装。 注意:在安装过程中,要设定语言、时区、超管用户root的密码、普…...

带格式 pdf 翻译

支持 openAI 接口,国内 deepseek 接口兼容 openAI 接口, deepseek api 又非常便宜 https://pdf2zh.com/ https://github.com/Byaidu/PDFMathTranslate...

【C++】C++11(一)

目录 一、C11简介二、统一的列表初始化2.1 {}初始化2.2 std::initializer_list 三、声明3.1 auto3.2 decltype3.3 nullptr 四、范围for五、智能指针六、STL中一些变化七、右值引用和移动语义7.1 左值引用和右值引用7.2 左值引用与右值引用比较7.3 右值引…...

初学stm32 --- ADC单通道采集

目录 ADC寄存器介绍(F1) ADC控制寄存器 1(ADC_CR1) ADC控制寄存器 2(ADC_CR2) ADC采样时间寄存器1(ADC_SMPR1) ADC采样时间寄存器2(ADC_SMPR2) ADC规则序列寄存器 1(ADC_SQR1) ADC规则序列寄存器 2(ADC_SQR2) ADC规则序列寄存器 3(ADC_SQR3) AD…...

【动态规划篇】欣赏概率论与镜像法融合下,别出心裁探索解答括号序列问题

本篇鸡汤:没有人能替你承受痛苦,也没有人能拿走你的坚强. 欢迎拜访:羑悻的小杀马特.-CSDN博客 本篇主题:带你解答洛谷的括号序列问题(绝对巧解) 制作日期:2025.01.10 隶属专栏:C/C题…...

Java(day7)

字符串练习 生成验证码 package day6; /*生成验证码 内容:可以是小写字母,也可以是大写字,还可以是数字 规则: 长度为5 内容中是四位字母,1位数字。 其中数字只有1位,但是可以出现在任意的位置。*/ impor…...

Word 转成pdf及打印的开源方案支持xp

Word转成pdf、打印的方案几乎没有免费开源的方案,现在提供一个通过LibreOffice实现的方案 操作依赖LibreOffice需要安装,点此下载老版本 5.4.7.2是最后一个支持xp的 版本如需xp要请安装此版本 LibreOffice官方介绍 LibreOffice 是一款开放源代码的自…...

LabVIEW软件侵权分析与应对

问:如果涉及到LabVIEW软件的仿制或模仿,特别是在功能、界面等方面,如何判断是否构成侵权?该如何应对? 答:LabVIEW软件的侵权问题,尤其是在涉及到仿制或模仿其功能、界面、设计等方面&#xff0…...

【redis】centos7下安装redis7

在CentOS 7下安装Redis7可以通过以下两种方法实现:手动编译安装和使用YUM进行安装。 CentOS 7系统的环境和版本: $ cat /etc/centos-release CentOS Linux release 7.9.2009 (Core)手动编译安装 参考官方文档:https://redis.io/docs/lates…...

[network]回顾:集线器(Hub)

集线器(Hub)的发明是计算机网络发展史上的一个重要里程碑。它最初的设计目的是为了解决局域网(LAN)中多台计算机共享网络资源的需求。 #mermaid-svg-OAmOmKYGAXoglS5z {font-family:"trebuchet ms",verdana,arial,sans-…...

79 Openssl3.0 RSA公钥加密数据

1 引言 最近不小心用到了openssl3.0,项目中需要使用rsa非对称加解密算法,所以把openssl3.0使用公钥加密数据的函数调用摸了一遍。 之所以记录此篇文章,是因为网络上大多数是openssl3.0以前的版本的函数接口,而openssl3.0之后已经丢…...

EFCore HasDefaultValueSql (续2 HasComputedColumnSql)

前情:EFCore HasDefaultValueSql EFCore HasDefaultValueSql (续1 ValueGeneratedOnAdd)-CSDN博客 小伙伴在使用 HasDefaultValueSql 时,对相关的 ValueGeneratedOnAdd, HasComputedColumnSql 也有了疑问: HasComputedColumnSql 对于计算…...

阿里巴巴TransmittableThreadLocal使用指南

前言 ThreadLocal在上下文的数据传输上非常的方便和简洁。工业实践中,比较常用的有三个,ThreadLocal、InheritableThreadLocal、TransmittableThreadLocal,那么他们三个之间有什么区别呢? 常见的三种ThreadLocal比较 ThreadLoc…...

ubuntu20下编译linux1.0 (part1)

author: hjjdebug date: 2025年 01月 09日 星期四 15:56:15 CST description: ubuntu20下编译linux1.0 (part1) 该博客记录了新gcc编译旧代码可能碰到的问题和解决办法, 可留作参考 操作环境: ubuntu20 $ gcc --version gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0 $ as --vers…...

欧拉公式和傅里叶变换

注:英文引文机翻,未校。 中文引文未整理去重,如有异常,请看原文。 Euler’s Formula and Fourier Transform Posted byczxttkl October 7, 2018 Euler’s formula states that e i x cos ⁡ x i sin ⁡ x e^{ix} \cos{x} i …...

Jenkins内修改allure报告名称

背景: 最近使用Jenkins搭建自动化测试环境时,使用Jenkins的allure插件生成的报告,一直显示默认ALLURE REPORT,想自定义成与项目关联的名称,如图所示,很明显自定义名称显得高大上些,之前…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异&#xff…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求&#xff…...

以光量子为例,详解量子获取方式

光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

站群服务器的应用场景都有哪些?

站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...

Windows安装Miniconda

一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?

在工业自动化持续演进的今天,通信网络的角色正变得愈发关键。 2025年6月6日,为期三天的华南国际工业博览会在深圳国际会展中心(宝安)圆满落幕。作为国内工业通信领域的技术型企业,光路科技(Fiberroad&…...