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

CentOS 7 磁盘阵列搭建与管理全攻略

CentOS 7 磁盘阵列搭建与管理全攻略

在数据存储需求日益增长的今天,磁盘阵列(RAID)凭借其卓越的性能、数据安全性和可靠性,成为企业级服务器和数据中心的核心存储解决方案。CentOS 7 作为一款稳定且功能强大的 Linux 操作系统,为磁盘阵列的创建、管理和维护提供了丰富的工具和方法。本文将深入探讨如何在 CentOS 7 系统中构建和管理磁盘阵列,助力你打造高效、安全的存储环境。

一、磁盘阵列(RAID)概述

1.1 RAID 的定义与作用

磁盘阵列(Redundant Array of Independent Disks,RAID)是由多个物理磁盘组成的逻辑存储单元,通过特定的算法将数据分布在多个磁盘上,实现数据冗余、性能提升或两者兼具的目的。在 CentOS 7 的服务器环境中,RAID 可以有效保障数据的安全性,防止因单个磁盘故障导致数据丢失,同时提升数据的读写速度,满足高并发业务的需求。

1.2 常见 RAID 级别及特点

  • RAID 0:条带化(Striping)技术,将数据均匀分布在多个磁盘上,读写性能极佳,但不提供数据冗余,任何一个磁盘故障都会导致数据丢失。适用于对性能要求高且对数据安全性要求较低的场景,如临时文件存储、视频编辑的缓存盘等。
  • RAID 1:镜像(Mirroring)技术,数据同时写入两个磁盘,两个磁盘互为镜像,提供 100% 的数据冗余,数据安全性高,但磁盘利用率仅为 50%,成本较高。常用于对数据安全性要求极高的场景,如数据库系统的关键数据存储。
  • RAID 5:分布式奇偶校验(Distributed Parity)技术,数据和奇偶校验信息分布在多个磁盘上,至少需要 3 个磁盘。它兼顾了性能和数据冗余,允许单个磁盘故障而不丢失数据,磁盘利用率为 (n - 1) /n(n 为磁盘数量)。是一种较为平衡的选择,广泛应用于企业级数据存储。
  • RAID 6:类似于 RAID 5,但增加了第二个独立的奇偶校验信息块,允许两个磁盘同时故障而不丢失数据,数据安全性更高,但性能相对 RAID 5 略有下降,至少需要 4 个磁盘,磁盘利用率为 (n - 2) /n。适用于对数据安全性要求极高且磁盘数量较多的场景。
  • RAID 10:也称为 RAID 1 + 0,先进行镜像再进行条带化,结合了 RAID 0 的高性能和 RAID 1 的高安全性,至少需要 4 个磁盘,磁盘利用率为 50%。适用于对性能和数据安全性都有较高要求的场景,如数据库服务器、虚拟化平台等。

二、CentOS 7 中磁盘阵列的搭建

2.1 准备工作

  1. 确认硬件设备:确保服务器已安装足够数量的磁盘,并且磁盘状态正常。可以通过lsblk命令查看系统识别到的磁盘设备信息,例如:
lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 20G 0 disk├─sda1 8:1 0 1G 0 part /boot└─sda2 8:2 0 19G 0 part├─centos-root 253:0 0 17G 0 lvm /└─centos-swap 253:1 0 2G 0 lvm [SWAP]sdb 8:16 0 10G 0 disksdc 8:32 0 10G 0 disk

从上述输出可以看到,系统中除了已分区使用的sda磁盘外,还有sdb和sdc两个未分区的磁盘,可用于创建磁盘阵列。

2. 安装 mdadm 工具:mdadm是 Linux 系统中用于创建、管理和监控软件 RAID 的工具。在 CentOS 7 中,可以使用yum命令安装mdadm:

yum install mdadm -y

安装完成后,使用mdadm --version命令确认安装成功并查看版本信息。

2.2 创建 RAID 5 阵列示例

假设我们使用sdb、sdc和sdd三个磁盘创建一个 RAID 5 阵列,具体操作步骤如下:

  1. 创建 RAID 5 阵列:使用mdadm命令创建 RAID 5 阵列,指定设备名称、阵列级别、磁盘数量和参与阵列的磁盘设备:
mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd

执行该命令后,mdadm会开始创建 RAID 5 阵列,过程中会输出一些创建信息,如:

mdadm: Defaulting to version 1.2 metadatamdadm: array /dev/md0 started.
  1. 查看 RAID 阵列状态:使用mdadm --detail /dev/md0命令查看 RAID 阵列的详细信息,包括阵列状态、成员磁盘、同步进度等:
mdadm --detail /dev/md0

输出结果类似如下:

/dev/md0:Version : 1.2Creation Time : Tue Jan 1 00:00:00 2024Raid Level : raid5Array Size : 20970496 (19.99 GiB 21.47 GB)Used Dev Size : 10485248 (9.99 GiB 10.74 GB)Raid Devices : 3Total Devices : 3Persistence : Superblock is persistentUpdate Time : Tue Jan 1 00:00:05 2024State : clean, degraded, recoveringActive Devices : 3Working Devices : 3Failed Devices : 0Spare Devices : 0Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncRebuild Status : 33% completeName : server01:0 (local to host server01)UUID : 12345678 - abcd - 1234 - abcd - 12345678abcdEvents : 18Number Major Minor RaidDevice State0 8 16 0 active sync /dev/sdb1 8 32 1 active sync /dev/sdc2 8 48 2 active sync /dev/sdd

从上述输出中可以看到,RAID 阵列正在进行数据同步,状态为clean, degraded, recovering,当同步完成后,状态将变为clean。

3. 创建文件系统:在 RAID 阵列同步完成后,使用mkfs.xfs命令在/dev/md0上创建xfs文件系统:

mkfs.xfs /dev/md0
  1. 挂载 RAID 阵列:创建挂载点,例如/data,并将 RAID 阵列挂载到该目录下:
mkdir /datamount /dev/md0 /data
  1. 设置开机自动挂载:编辑/etc/fstab文件,在文件末尾添加一行配置信息,使系统开机时自动挂载 RAID 阵列:
/dev/md0 /data xfs defaults 0 0

保存并退出/etc/fstab文件后,使用mount -a命令检查挂载配置是否正确。

三、CentOS 7 中磁盘阵列的管理与维护

3.1 监控 RAID 阵列状态

  1. 使用 mdadm 监控:通过mdadm --detail /dev/md0命令定期查看 RAID 阵列的详细状态,重点关注阵列状态、成员磁盘状态和同步进度等信息。
  1. 设置邮件报警:可以配置mdadm在 RAID 阵列出现故障时发送邮件报警。编辑/etc/mdadm.conf文件,添加或修改以下配置:
MAILADDR your_email@example.com

同时,确保系统已安装邮件发送工具(如postfix)并正确配置,以便mdadm能够发送报警邮件。

3.2 更换故障磁盘

当 RAID 阵列中的某个磁盘出现故障时,需要及时更换。以 RAID 5 阵列为例,假设/dev/sdb磁盘故障,操作步骤如下:

  1. 标记故障磁盘:使用mdadm --manage /dev/md0 --fail /dev/sdb命令将故障磁盘标记为失效:
mdadm --manage /dev/md0 --fail /dev/sdb
  1. 移除故障磁盘:使用mdadm --manage /dev/md0 --remove /dev/sdb命令将故障磁盘从 RAID 阵列中移除:
mdadm --manage /dev/md0 --remove /dev/sdb
  1. 更换新磁盘:在服务器上物理更换故障磁盘为新磁盘,并确保系统识别到新磁盘,如/dev/sdb。
  1. 添加新磁盘到阵列:使用mdadm --manage /dev/md0 --add /dev/sdb命令将新磁盘添加到 RAID 阵列中,系统会自动开始数据同步:
mdadm --manage /dev/md0 --add /dev/sdb
  1. 监控同步进度:使用mdadm --detail /dev/md0命令查看数据同步进度,等待同步完成后,RAID 阵列恢复正常状态。

3.3 扩展 RAID 阵列

随着数据量的增长,可能需要扩展 RAID 阵列的容量。以 RAID 5 阵列为例,假设我们要添加一个新磁盘/dev/sde来扩展/dev/md0阵列,操作步骤如下:

  1. 添加新磁盘到阵列:使用mdadm --grow /dev/md0 --raid-devices=4 --add /dev/sde命令将新磁盘添加到 RAID 阵列中,并扩展阵列设备数量:
mdadm --grow /dev/md0 --raid-devices=4 --add /dev/sde
  1. 调整文件系统大小:在 RAID 阵列扩展完成后,需要调整文件系统大小以使用新增的空间。对于xfs文件系统,可以使用xfs_growfs命令自动调整文件系统大小:
xfs_growfs /data

执行该命令后,xfs_growfs会自动将文件系统扩展到 RAID 阵列的全部可用空间。

四、CentOS 7 磁盘阵列性能优化

4.1 调整 RAID 参数

  1. 调整条带大小:RAID 条带大小会影响数据的读写性能。对于大文件读写,可以适当增大条带大小;对于小文件读写,较小的条带大小可能更合适。可以在创建 RAID 阵列时通过--chunk参数指定条带大小,例如:
mdadm --create /dev/md0 --level=5 --raid-devices=3 --chunk=256 /dev/sdb /dev/sdc /dev/sdd

上述命令将条带大小设置为 256KB,具体的条带大小需要根据实际应用场景进行测试和调整。

2. 启用多路径(Multipath):如果服务器通过多个路径连接到存储设备,可以启用多路径技术,提高数据传输的可靠性和性能。在 CentOS 7 中,可以使用multipath-tools工具来管理多路径设备,具体配置步骤较为复杂,需要根据实际硬件环境进行设置。

4.2 优化文件系统设置

  1. 调整文件系统参数:对于xfs文件系统,可以通过调整/etc/fstab文件中文件系统的挂载选项来优化性能。例如,添加noatime选项可以禁止更新文件的访问时间,减少磁盘 I/O 操作:
/dev/md0 /data xfs defaults,noatime 0 0
  1. 使用磁盘缓存:可以使用tmpfs或ramdisk将一部分内存作为磁盘缓存,提高数据的读写速度。例如,创建一个 512MB 的tmpfs挂载到/data/cache目录下:
mkdir /data/cachemount -t tmpfs -o size=512M tmpfs /data/cache

将频繁访问的数据存储在磁盘缓存中,可以显著提升系统的性能。

五、总结

在 CentOS 7 系统中搭建和管理磁盘阵列,能够有效提升数据存储的安全性和性能。通过本文介绍的方法,你可以根据实际需求选择合适的 RAID 级别,完成磁盘阵列的创建、管理、维护和性能优化等操作。在实际应用过程中,要注意定期监控 RAID 阵列状态,及时处理故障和进行容量扩展,以确保数据存储的稳定和高效。

相关文章:

CentOS 7 磁盘阵列搭建与管理全攻略

CentOS 7 磁盘阵列搭建与管理全攻略 在数据存储需求日益增长的今天,磁盘阵列(RAID)凭借其卓越的性能、数据安全性和可靠性,成为企业级服务器和数据中心的核心存储解决方案。CentOS 7 作为一款稳定且功能强大的 Linux 操作系统&am…...

区块链技术:深入共识算法、智能合约与DApps的架构奥秘

引言:区块链的颠覆性潜力 在数字化浪潮席卷全球的今天,区块链技术以其独特的去中心化特性、不可篡改的数据记录和透明的交易机制,正在重塑我们对信任、价值交换和组织形式的理解。从比特币的诞生到以太坊的智能合约革命,再到如今…...

深度学习物理信息神经网络PINN+大模型辅助编程​

1. 物理信息神经网络(PINN)的兴起 近年来,物理信息神经网络(Physics-Informed Neural Networks, PINN)成为计算科学与人工智能交叉领域的前沿方向。传统数值方法(如有限差分法、有限单元法)在高…...

vue element使用el-table时,切换tab,table表格列项发生错位问题

展示问题 问题描述:使用el-table的fixed"right"属性后,如果切换tab时,回出现最后一列错误的问题 官网提供解决方法:doLayout 需要注意的事项:我这里是通过组件使用的table组件,涉及多层组件封装…...

(八)深入了解AVFoundation-采集:拍照功能的实现

引言 在上一篇文章中,我们初步完成了使用 AVFoundation 采集视频数据的流程,掌握了 AVCaptureSession 的搭建与视频流的预览显示。 本篇将继续深入 AVFoundation,聚焦于静态图片采集的实现。通过 AVCapturePhotoOutput,我们可以…...

C++区别于C语言的提升用法(万字总结)

1.namespace产生原因 在C语言中,变量,函数,以至于类都是大量存在的,因此会产生大量的名称存在于全局作用域中,可能产生很多冲突,至此c的祖师爷为避免命名冲突和名字的污染,造出来了关键字names…...

创新项目实训开发日志4

一、开发简介 核心工作内容&#xff1a;logo实现、注册实现、登录实现、上传gitee 工作时间&#xff1a;第十周 二、logo实现 1.设计logo 2.添加logo const logoUrl new URL(/assets/images/logo.png, import.meta.url).href <div class"aside-first">…...

ospf综合作业

需求 需求分析 区域划分&#xff1a; 网络划分为 area 0、area 1、area 2、area 3、area 4 多个区域。其中 area 0 作为骨干区域&#xff0c;其他为非骨干区域。这种划分符合 OSPF&#xff08;开放式最短路径优先&#xff09;协议中区域设计原则&#xff0c;不同区域通过 ABR…...

旋转磁体产生的场-对导航姿态的影响

pitch、yaw、roll是描述物体在空间中旋转的术语&#xff0c;通常用于计算机图形学或航空航天领域中。这些术语描述了物体绕不同轴旋转的方式&#xff1a; Pitch&#xff08;俯仰&#xff09;&#xff1a;绕横轴旋转&#xff0c;使物体向前或向后倾斜。俯仰角度通常用来描述物体…...

Hive 数据同步到 Doris 最佳实践方案:从场景适配到性能调优全解析

在大数据领域&#xff0c;Hive 作为成熟的数据仓库解决方案&#xff0c;常用于海量数据存储与离线处理&#xff0c;而 Doris 凭借其强大的 OLAP 能力&#xff0c;在实时分析、即席查询等场景表现卓越。当企业需要将 Hive 数据仓库中的数据与 Doris 的分析能力结合时&#xff0c…...

netty中的Channel与Java NIO中的Channel核心对比

Netty的Channel和Java NIO的Channel虽然都用于网络通信,但设计理念、功能扩展及适用场景存在显著差异。以下从核心特性、设计模式及性能优化等维度展开对比: 1. 抽象层次与功能范围 Java NIO Channel 基础IO模型:仅支持非阻塞IO(NIO),如SocketChannel、ServerSocketChann…...

基于whisper和ffmpeg语音转文本小程序

目录 一、环境准备 ✅ 第一步&#xff1a;安装并准备 Conda 环境 ✅ 第二步&#xff1a;创建 Whisper 专用的 Conda 虚拟环境 ✅ 第三步&#xff1a;安装 GPU 加速版 PyTorch&#xff08;适配 RTX 4060&#xff09; ✅ 第四步&#xff1a;安装 Whisper 和 FFMPEG 依赖 ✅…...

使用ffmpeg 将图片合成为视频,填充模糊背景,并添加两段音乐

1.输入3张图片,每张播放一次,播放两秒,视频分辨率设置为1920:1080,每张图片前0.3秒淡入,后0.3秒淡出,图片宽高比不变,用白色填充空白区域 ffmpeg -loop 1 -t 2 -i "img1.jpg" \-loop 1 -t 2 -i "img2.jpg" \-loop 1 -t 2 -i "img3.jpg" \-filte…...

Python协程详解:从基础到实战

协程是Python中实现并发编程的重要方式之一&#xff0c;它比线程更轻量级&#xff0c;能够高效处理I/O密集型任务。本文将全面介绍协程的概念、原理、实现方式以及与线程、进程的对比&#xff0c;包含完整的效率对比代码和详细说明&#xff0c;帮助Python开发者深入理解并掌握协…...

服务器部署LLaMAFactory进行LoRA微调

一、什么是LLaMAFactory LlamaFactory 是一个专为 大型语言模型&#xff08;LLM&#xff09;微调 设计的开源工具库&#xff0c;旨在简化大模型&#xff08;如 LLaMA、GPT、Mistral 等&#xff09;的定制化训练流程&#xff0c;降低技术门槛和硬件成本。以下是它的核心功能和应…...

ASP.NET MVC​ 入门指南

以下是一份 MVC&#xff08;Model - View - Controller&#xff09;培训教程&#xff0c;以ASP.NET MVC 为例进行讲解&#xff0c;适合有一定编程基础的学习者快速上手。 1. MVC 概述 1.1 什么是 MVC MVC 是一种软件设计模式&#xff0c;它将应用程序分为三个主要部分&#…...

mapbox高阶,高程影像、行政区边界阴影效果实现

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️line线图层样式1.4 ☘️symbol符号图层…...

如何下载适用于语音识别功能增强的Google Chrome浏览器

谷歌浏览器一直是互联网用户的首选工具之一&#xff0c;尤其是它强大的扩展功能&#xff0c;使得用户可以根据需求定制浏览器。对于需要使用语音识别功能的用户来说&#xff0c;谷歌浏览器提供了优秀的支持&#xff0c;通过简单的设置和插件&#xff0c;可以显著提升语音识别的…...

运维打铁:Centos 7 安装 redis_exporter 1.3.5

文章目录 一、CentOS 7 安装 redis_exporter 1.3.51. 安装2. 配置自启动&#xff0c;并连接 Redis&#xff0c;修改端口3. 配置 Prometheus 采集 redis_exporter 数据4. 配置 Grafana 查看数据5. Redis 集群配置 二、常见问题及解决办法1. 下载二进制包失败2. 解压部署时权限问…...

3台CentOS虚拟机部署 StarRocks 1 FE+ 3 BE集群

背景&#xff1a;公司最近业务数据量上去了&#xff0c;需要做一个漏斗分析功能&#xff0c;实时性要求较高&#xff0c;mysql已经已经不在适用&#xff0c;做了个大数据技术栈选型调研后&#xff0c;决定使用StarRocks StarRocks官网&#xff1a;StarRocks | A High-Performa…...

Oracle 11g RAC ASM磁盘组剔盘、加盘实施过程

环境&#xff1a;AIX6.1 Oracle RAC 11.2.0.3 前期准备&#xff1a; 1.查看DG磁盘组空间情况&#xff1a; –查看DG磁盘组空间情况&#xff1a; ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Of…...

网站高可用架构设计基础——高可用策略和架构原则

一、正面保障与减少损失 要想让系统能够稳定可用&#xff0c;首先要考虑如何避免问题的发生。比如说可以通过 UPS&#xff08;不间断电源&#xff09;来避免服务器断电&#xff0c;可以通过事先增加机器来解决硬件资源不足的问题。 然后&#xff0c;如果问题真的发生了&#…...

从入门到精通【MySQL】视图与用户权限管理

文章目录 &#x1f4d5;1. 视图✏️1.1 视图的基本概念✏️1.2 试图的基本操作&#x1f516;1.2.1 创建视图&#x1f516;1.2.2 使用视图&#x1f516;1.2.3 修改数据&#x1f516;1.2.4 删除视图 ✏️1.3 视图的优点 &#x1f4d5;2. 用户与权限管理✏️2.1 用户&#x1f516;…...

使用QML Tumbler 实现时间日期选择器

目录 引言相关阅读项目结构示例实现与代码解析示例一&#xff1a;时间选择器&#xff08;TimePicker&#xff09;示例二&#xff1a;日期时间选择器&#xff08;DateTimePicker&#xff09; 主窗口整合运行效果总结下载链接 引言 在现代应用程序开发中&#xff0c;时间与日期选…...

[golang] 介绍 | 特点 | 应用场景

“编程不仅仅是写代码&#xff0c;更是一种思考方式。” 参考资料 《Unix编程环境》- Brian W. Kernighan, Rob Pike《程序设计实践》- Brian W. Kernighan, Rob PikeGo语言官方网站&#xff1a;https://golang.orgRob Pike的个人博客&#xff1a;http://herpolhode.com/rob/ …...

Python 爬虫实战 | 企名科技

文章目录 一、企名科技1、目标网站2、网站特点3、确定解密位置4、扣js代码 一、企名科技 1、目标网站 网址&#xff1a;https://wx.qmpsee.com/articleDetail?idfeef62bfdac45a94b9cd89aed5c235be目标数据&#xff1a;获取消费行业研究下面的13篇文章数据 2、网站特点 服…...

c加加学习之day06->STL标准库->day01

1.介绍&#xff1a;C 标准模板库&#xff08;Standard Template Library&#xff0c;简称 STL&#xff09;是一组泛型编程的模板类和函数&#xff0c;旨在提供常用的数据结构、算法和函数对象。STL 是 C 标准库的一部分&#xff0c;极大地提高了编程效率和代码的可重用性。STL …...

并发设计模式实战系列(6):读写锁

&#x1f31f; ​大家好&#xff0c;我是摘星&#xff01;​ &#x1f31f; 今天为大家带来的是并发设计模式实战系列&#xff0c;第六章读写锁模式​​&#xff0c;废话不多说直接开始~ 目录 一、核心原理深度拆解 1. 读写锁三维模型 2. 关键实现原理 二、生活化类比&am…...

【网络原理】从零开始深入理解TCP的各项特性和机制.(一)

本篇博客给大家带来的是网络原理的相关知识.其中传输层这一部分非常重要,面试中只要是涉及到网络这一部分知识,几乎是必定会考传输层TCP的. &#x1f40e;文章专栏: JavaEE初阶 &#x1f680;若有问题 评论区见 ❤ 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给…...

基于Pytorch的深度学习-第二章

2.1 CIFAR-10数据集简介 CIFAR-10数据集包含10个类别&#xff1a;plane、car、bird、cat、deer、dog、frog、horse、ship、truck&#xff0c;每个类别有6000张图片。其中训练集图片有50000张&#xff0c;测试集有10000张图片。训练集和测试集的生成方法是&#xff0c;分别从每…...

gitlab-ce容器镜像源(国内)

下载命令 docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/gitlab/gitlab-ce:17.10.4-ce.0 更多参考&#xff1a; https://docker.aityp.com/image/docker.io/gitlab/gitlab-ce:17.10.4-ce.0...

TinyVue v3.22.0 正式发布:深色模式上线!集成 UnoCSS 图标库!TypeScript 类型支持全面升级!

我们非常高兴地宣布&#xff0c;2025年4月7日&#xff0c;TinyVue发布了v3.22.0&#x1f389;。 本次 3.22.0 版本主要有以下重大变更&#xff1a; 支持深色模式增加基于 UnoCSS 的图标库更丰富的 TypeScript 类型声明支持 XSS 配置 详细的 Release Notes 请参考&#xff1a…...

Browser-Use WebUI:让AI自动使用浏览器帮你查询信息执行任务

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

使用PyTorch如何配置一个简单的GTP

目录 一、什么是GPT 1. Transformer Block 的核心结构​ ​2. 关键组件解析​ ​​(1) 掩码多头自注意力&#xff08;Masked Multi-Head Self-Attention&#xff09;​​ ​​(2) 前馈神经网络&#xff08;FFN&#xff09;​​ ​​(3) 层归一化&#xff08;LayerNorm&…...

【FAQ】针对于消费级NVIDIA GPU的说明

概述 本文概述 HP Anyware 在配备消费级 NVIDIA GPU 的物理工作站上的关​​键组件、安装说明和重要注意事项。 注意&#xff1a;本文档适用于 NVIDIA 消费级 GPU。NVIDIA Quadro 和 Tesla GPU 也支持 HP Anyware 在公有云、虚拟化或物理工作站环境中运行。请参阅PCoIP Graphi…...

02_java的运行机制以及JDKJREJVM基本介绍

1、运行机制 2、JDK&JRE&JVM JDK 基本介绍 &#xff08;1&#xff09; JDK 的全称(Java Development Kit Java开发工具包) JDK JRE java的开发工具 [ java, javac, javadoc, javap等 ] &#xff08;2&#xff09;JDK是提供给Java开发人员使用的&#xff0c;其…...

go 的 net 包

目录 一、net包的基本功能 1.1 IP地址处理 1.2 网络协议支持 1.3 连接管理 二、net包的主要功能模块 2.1 IP地址处理 2.2 TCP协议 2.3 UDP协议 2.4 Listener和Conn接口 三、高级功能 3.1 超时设置 3.2 KeepAlive控制 3.3 获取连接信息 四、实际应用场景 4.1 Web服…...

ShenNiusModularity项目源码学习(21:ShenNius.Admin.Mvc项目分析-6)

菜单列表页面用于新建、维护及删除系统所有模块所需的菜单信息&#xff0c;包括菜单名称、菜单中的按钮、菜单关联的后台服务地址及请求方式等。菜单列表页面的后台控制器类MenuController位于ShenNius.Admin.Mvc项目的Areas\Sys\Controllers内&#xff0c;页面文件位于同项目的…...

基于单片机的游泳馆智能管理系统

标题:基于单片机的游泳馆智能管理系统 内容:1.摘要 随着人们生活水平的提高&#xff0c;游泳馆的规模和客流量不断增大&#xff0c;传统的管理方式已难以满足高效、便捷的管理需求。本研究的目的是设计并实现一种基于单片机的游泳馆智能管理系统。方法上&#xff0c;采用单片机…...

开发了一个b站视频音频提取器

B站资源提取器-说明书 一、功能说明 本程序可自动解密并提取B站客户端缓存的视频资源&#xff0c;支持以下功能&#xff1a; - 自动识别视频缓存目录 - 将加密的.m4s音频文件转换为标准MP3格式 - 将加密的.m4s视频文件转换为标准MP4格式&#xff08;合并音视频流&#xff09;…...

vue2项目,为什么开发环境打包出来的js文件名是1.js 2.js,而生产环境打包出来的是chunk-3adddd.djncjdhcbhdc.js

Vue2项目开发环境与生产环境JS文件名差异的核心原理及配置逻辑如下&#xff1a; 一、文件名差异的底层机制 1‌、Webpack默认命名策略‌ 开发环境默认禁用哈希&#xff0c;采用[id].js命名规则&#xff08;如1.js&#xff09;&#xff0c;生产环境启用[chunkhash]生成chunk-xxx…...

SQL进阶知识:六、动态SQL

今天介绍下关于动态SQL的详细介绍&#xff0c;并结合MySQL数据库提供实际例子。 动态SQL是指在运行时动态构建和执行SQL语句的技术。这种技术在处理复杂的查询逻辑、参数化查询或在某些情况下需要根据用户输入动态调整查询时非常有用。MySQL支持动态SQL&#xff0c;主要通过PRE…...

Spring Boot常用注解详解:实例与核心概念

Spring Boot常用注解详解&#xff1a;实例与核心概念 前言 Spring Boot作为Java领域最受欢迎的快速开发框架&#xff0c;其核心特性之一是通过注解&#xff08;Annotation&#xff09;简化配置&#xff0c;提高开发效率。注解驱动开发模式让开发者告别繁琐的XML配置&#xff…...

java 富文本转pdf

前言&#xff1a; 本文的目的是将传入的富文本内容(html标签&#xff0c;图片)并且分页导出为pdf。 所用的核心依赖为iText7。 因为itextpdf-core的核心包在maven中央仓库中&#xff0c;阿里云华为云等拉不下来&#xff0c;中央仓库在外网&#xff0c;并且此包在中央仓库中未…...

17.第二阶段x64游戏实战-人工遍历二叉树结构

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 本次游戏没法给 内容参考于&#xff1a;微尘网络安全 上一个内容&#xff1a;16.第二阶段x64游戏实战-分析二叉树结构 上一个内容里把二叉树的结构写了写&am…...

C#基于Sunnyui框架和MVC模式实现用户登录管理

C#基于Sunnyui框架和MVC模式实现用户登录管理 1 Controller1.1 UserManagementController.cs&#xff08;控制器入口&#xff09; 2 Model2.1 UserRepository.cs&#xff08;用户管理模型&#xff09;2.2 User.cs&#xff08;用户结构体&#xff09;2.3 SQLiteHelper.cs&#x…...

Spring Boot实战(三十六)编写单元测试

目录 一、什么是单元测试&#xff1f;二、Spring Boot 中的单元测试依赖三、举例 Spring Boot 中不同层次的单元测试3.1 Service层3.2 Controller 层3.3 Repository层 四、Spring Boot 中 Mock、Spy 对象的使用4.1 使用Mock对象的背景4.2 什么是Mock对象&#xff0c;有哪些好处…...

声音分离人声和配乐-从头设计数字生命第4课——仙盟创梦IDE

音频分离在数字人中具有多方面的重要作用&#xff0c;主要体现在以下几个方面&#xff1a; 提高语音合成质量&#xff1a;通过音频分离&#xff0c;可以将原始音频中的语音部分与其他背景噪音或干扰声音分离开来。这样在进行语音合成时&#xff0c;能够获得更纯净的语音信号&am…...

http协议、全站https

一、http协议 1、为何要学http协议? 用户用浏览器访问网页,默认走的都是http协议,所以要深入研究web层,必须掌握http协议 2、什么是http协议 1、全称Hyper Text Transfer Protocol(超文本传输协议) ### 一个请求得到一个响应包 普通…...

Mediamtx与FFmpeg远程与本地推拉流使用

1.本地推拉流 启服 推流 ffmpeg -re -stream_loop -1 -i ./DJI_0463.MP4 -s 1280x720 -an -c:v h264 -b:v 2000k -maxrate 2500k -minrate 1500k -bufsize 3000k -rtsp_transport tcp -f rtsp rtsp://127.0.0.1:8554/stream 拉流 ffplay -rtsp_transport tcp rtsp://43.136.…...