华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 fio 深度测评华为云云耀云服务器L实例的磁盘性能
本文收录在专栏:#云计算入门与实践 - 华为云 专栏中,本系列博文还在更新中
相关华为云云耀云服务器L实例评测文章列表如下:
- 华为云云耀云服务器L实例评测 | 从零开始:云耀云服务器L实例的全面使用解析指南
- 华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 Geekbench 深度测评华为云云耀云服务器L实例的处理器性能
- 华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 STREAM 深度测评华为云云耀云服务器L实例的内存性能
华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 fio 深度测评华为云云耀云服务器L实例的磁盘性能 - [ 云计算 华为云 ] 解决办法:如何更换华为云云耀云服务器L实例的镜像
文章目录
- 一、评测背景
- 二、评测声明
- 三、被评测服务器参数及准备
- 3.1 被评测服务器基本参数
- 3.2 测试机采购
- 3.2.1 华为云云耀云服务器L实例
- 3.2.2 友商的轻量应用服务器 lighthouse
- 四、使用 fio 测试磁盘 I/O 性能
- 4.1 fio 安装
- 4.2 fio 常用测试场景与测试方法
- 4.2.1 测试场景
- 4.2.2 测试方法
- (1)使用命令行测试
- (2)使用配置文件进行测试
- 4.2.3 各运行参数说明
- 4.2 在华为云云耀云服务器L实例运行 fio 测试
- 4.3 友商的轻量应用服务器 lighthouse 运行 fio 测试
- 五、最终测试比对结果
- 六、文末总结
一、评测背景
本文是继之前文章:《华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 Geekbench 深度测评华为云云耀云服务器L实例》与 华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 STREAM 深度测评华为云云耀云服务器L实例后,继续探讨华为云的创新产品【华为云云耀云服务器L实例】,为读者提供全面的评测信息,本篇文章重点是测试其【华为云云耀云服务器L实例】的磁盘 I/O 性能。我们仍然选取了对比机器,也就是友商的轻量级应用服务器 lighthouse,经过使用 fio 的详细测试,我们将对华为云的最新云耀云服务器L实例的CPU处理器性能进行严格测试和分析,以帮助你更加清晰的认识华为云的最新云耀云服务器L实例,以及帮助你更好的在众多繁杂的服务器中进行选择判断。
二、评测声明
本人任何测试其云计算或者其他商品,都站在如下声明立场
尽管本文是在参与华为云云耀云服务器L实例评测活动的背景下编写的,但是本博主是站在一个中立的角度来进行评测,不存在因为是活动文上来就无脑吹,这有背征文的目的以及我的个人初衷。
三、被评测服务器参数及准备
3.1 被评测服务器基本参数
华为云云耀云服务器L实例现阶段提供2核2G
、2核4G
、2核8G
的 3 种 CPU 和内存规格,不同 CPU 和内存规格与系统盘、峰值带宽和流量包组合共有 6 种实例规格。这里选择的友商测试机为轻量应用服务器 lighthouse,该友商的轻量型应用服务器与华为云云耀云服务器L实例类似,都提供不同的应用场景,不通过的镜像支持以及规格,可以说是相互的对标产品。
本测试使用的华为云云耀云服务器L实例与友商的轻量应用服务器 lighthouse均位于广州区域,且配置均为2核2G
,配置参数表格为:
规格配置 | 华为云云耀云服务器L实例 | 友商的轻量应用服务器 lighthouse |
---|---|---|
核心数 | 2核 | 2核 |
内存 | 2G | 2G |
操作系统 | CentOS 7.6 | CentOS 7.6 |
区域 | 广州 | 广州 |
3.2 测试机采购
3.2.1 华为云云耀云服务器L实例
因为本文重点是对华为云云耀云服务器L实例进行处理器层面的评测,由于篇幅有限,此处步骤略过,对于如何采购华为云云耀云服务器L实例具体步骤细节,参考我之前的博文中的第三节即可:华为云云耀云服务器L实例评测 | 从零开始:云耀云服务器L实例的全面使用解析指南
购买后服务器规格如下:
3.2.2 友商的轻量应用服务器 lighthouse
对比测试机采购步骤略过,因为不是今天的主角,直接在下面贴出购买后的截图
四、使用 fio 测试磁盘 I/O 性能
“fio” 是一个广泛用于评估磁盘 I/O 性能的工具,它支持多达19种不同的 I/O 引擎,包括但不限于:sync、mmap、libaio、posixaio、SG v3、splice、null、network、syslet、guasi、solarisaio等。fio 不断更新,目前最新版本为 v3.19,你可以在其官方网站 “fio” 上获取相关信息。
- fio 官方网站:https://sourceforge.net/directory/software-development/windows/
使用 fio 进行磁盘压力测试有两种主要方法。一种是通过命令行参数进行配置;另一种是通过读取配置文件来设置测试参数。这两种方法在功能上差异不大,但后者允许你结合使用诸如 sh 和 screen 等工具,以便长时间运行测试。
为了演示如何使用 fio 我们这里直接使用华为云云耀云服务器L实例进行演示
4.1 fio 安装
本文以 华为云云耀云服务器L实例评测 CentOS 7.6 操作系统的云主机为例,可以直接yum
安装测试工具 fio。
[root@hcss-ecs-d51e ~]# yum install -y libaio
[root@hcss-ecs-d51e ~]# yum install -y libaio-devel
[root@hcss-ecs-d51e ~]# yum install -y fio
出现 Complete! 后,确认安装完成,如下图:
4.2 fio 常用测试场景与测试方法
4.2.1 测试场景
-
测试延迟
队列深度为1,bs设置为4k,也就是模拟单个队列读写的延迟测试
-
吞吐
队列深度为32,bs设置为128k,测试最大能力去跑满整个磁盘带宽
-
iops
队列深度为32,bs设置为4k,要在最短的时间内多去读磁盘
小文件通常测试随机读写,大文件通常测试顺序读写。
常见测试场景参照(重要):
-
顺序读写(吞吐量,常用单位为 MB/s):文件在硬盘上存储位置是连续的。
适用场景:大文件拷贝(比如视频音乐)。速度即使很高,对数据库性能也没有参考价值。
-
4K 随机读写(IOPS,常用单位为次):在硬盘上随机位置读写数据,每次 4KB。
适用场景:操作系统运行、软件运行、数据库。
4.2.2 测试方法
fio 的测试方法有两种,一种是直接使用命令行,另外一种是可以使用测试配置文件,区别是使用测试配置文件可以定期进行执行测试。
注意(非常重要):
- 请不要在系统盘上进行 fio 测试,避免损坏系统重要文件。
- 为避免底层文件系统元数据损坏导致数据损坏,请不要在业务数据盘上进行测试。
- 请确保
/etc/fstab
文件配置项中没有被测硬盘的挂载配置,否则将导致云服务器启动失败。 - 测试硬盘性能时,建议直接测试裸数据盘(如
/dev/vdb
)。 - 测试文件系统性能时,推荐指定具体文件测试(如
/data/file
)。 - fio 测试建议在空闲的、未保存重要数据的磁盘上进行,并在测试完成后重新创建文件系统。
(1)使用命令行测试
filename
需要指定设备中的具体磁盘盘符,如下以/dev/sda
为例:
顺序读 BW
fio -name=Seq_Read_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=read -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
顺序写 BW
fio -name=Seq_Write_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=write -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
随机读 IOPS
fio -name=Rand_Read_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=randread -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
随机写 IOPS
fio -name=Rand_Write_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=randwrite -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=4k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
混合读写
fio -name=Read_Write_IOPS_Test -group_reporting -direct=1 -iodepth=128 -rw=randrw -rwmixread=70 -refill_buffers -norandommap -randrepeat=0 -ioengine=libaio -bs=4k -size=10G -numjobs=1 -runtime=600 -ioscheduler=noop -filename=/dev/sda
写吞吐量
fio -name=Write_BandWidth_Test -group_reporting -direct=1 -iodepth=32 -rw=write -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=1024k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
读吞吐量
fio -name=Read_BandWidth_Test -group_reporting -direct=1 -iodepth=32 -rw=read -ioengine=libaio -refill_buffers -norandommap -randrepeat=0 -bs=1024k -size=10G -numjobs=1 -runtime=600 -filename=/dev/sda
(2)使用配置文件进行测试
下面的是示例的测试文件,可以直接创建一个测试文件叫做:fio.conf
# fio.conf
[global]
ioengine=libaio
iodepth=128
direct=0
thread=1
numjobs=16
norandommap=1
randrepeat=0
runtime=60
ramp_time=6
size=1g
directory=/your/path[read4k-rand]
stonewall
group_reporting
bs=4k
rw=randread[read64k-seq]
stonewall
group_reporting
bs=64k
rw=read[write4k-rand]
stonewall
group_reporting
bs=4k
rw=randwrite[write64k-seq]
stonewall
group_reporting
bs=64k
rw=write
文件保存好后,直接使用下面的命令进行运行:
fio fio.conf
4.2.3 各运行参数说明
- filename: 指定文件 (设备) 的名称。可以通过冒号分割同时指定多个文件,如 filename=/dev/sda:/dev/sdb。
- directory: 设置 filename 的路径前缀。在后面的基准测试中,采用这种方式来指定设备。
- name: 指定 job 的名字,在命令行中表示新启动一个 job。
- direct: bool 类型,默认为 0, 如果设置成 1,表示不使用 io buffer。
- ioengine: I/O 引擎,现在 fio 支持 19 种 ioengine。默认值是 sync 同步阻塞 I/O,libaio 是 Linux 的 native 异步 I/O。关于同步异步,阻塞和非阻塞模型可以参考文章 使用异步 I/O 大大提高应用程序的性能”。
- iodepth: 如果 ioengine 采用异步方式,该参数表示一批提交保持的 io 单元数。该参数可参考文章“Fio 压测工具和 io 队列深度理解和误区”。
- rw: I/O 模式,随机读写,顺序读写等等。可选值:read,write,randread,randwrite,rw,randrw。
- bs: I/O block 大小,默认是 4k。测试顺序读写时可以调大。
- size: 指定 job 处理的文件的大小。
- numjobs: 指定 job 的克隆数(线程)。
- time_based: 如果在 runtime 指定的时间还没到时文件就被读写完成,将继续重复知道 runtime 时间结束。
- runtime: 指定在多少秒后停止进程。如果未指定该参数,fio 将执行至指定的文件读写完全完成。
- group_reporting: 当同时指定了 numjobs 了时,输出结果按组显示。
如果是配置文件,配置文件属于 ini 格式的,即有区块概念,区块下通过“=”设置键值对。
4.2 在华为云云耀云服务器L实例运行 fio 测试
下面的说明是使用 fio 在华为云云耀云服务器L实例上进行测试,因为篇幅有限,下面只举例(图片)顺序读 IOPS。
- bw:磁盘的吞吐量,这个是顺序读写考察的重点
- iops:磁盘的每秒读写次数,这个是随机读写考察的重点
在上述测试过程中,顺序读测试结果的 吞吐量 BW 是104MB/s
。
4.3 友商的轻量应用服务器 lighthouse 运行 fio 测试
在友商的轻量应用服务器 lighthouse 运行 fio 测试
在上述 4.2 节中,华为云云耀云服务器L实例上运行 fio 测试步骤里已经详细介绍如何使用 fio 以及相关的细节介绍,这里节约篇幅省略中间过程,直接给出在友商的轻量应用服务器 lighthouse 运行 fio 的结果:
以执行顺序读为例:
五、最终测试比对结果
这里和之前使用 Geekbench、STREAM测试的时候一样,废话不多,直接上 fio 的最终结果:
fio 硬盘读写性能测试 | 顺序读(MB/s) | 顺序写(MB/s) | 随机读(IOPS) | 随机写(IOPS) |
---|---|---|---|---|
华为云云耀云服务器L实例 | 104 | 90.9 | 5101 | 5122 |
友商的轻量应用服务器 lighthouse | 23.7 | 23.6 | 6050 | 6064 |
从上表中可以看出,同样是测试文件大小 1G 的情况下,华为云云耀云服务器L实例的顺序读与顺序写的速度要远高于友商轻量级应用服务器,但是在随机读与随机写的测试中,友商轻量级应用服务器的 IOPS 要略高于华为云云耀云服务器L实例,但是相差没有顺序读写那么夸张。
这也就说明,如果你是读写大文件,那么华为云云耀云服务器L实例的速度会远高于友商产品,而数据库或者应用在华为云云耀云服务器L实例上速率略低于友商竞品。
六、文末总结
在本文中,我们对被评测服务器的硬盘 I/O 性能进行了全面的评测和比对。在本文的重点部分,我们使用 fio 工具来测试这两款服务器的硬盘读取 I/O 性能。我们介绍了 fio 工具的安装过程、使用方法与相关详细运行参数报告进行了详细说明。并分别在两种服务器上运行了 fio 测试,以深入评估它们的在硬盘上的 I/O 性能。
过本文的评测和比对,可以帮助读者更好地了解这两款服务器的内存性能表现,为他们做出明智的决策提供有价值的信息。无论是在企业环境还是个人应用中,优化内存性能都是提高整体系统性能的关键一步。
[ 本文作者 ] bluetata
[ 原文链接 ] https://bluetata.blog.csdn.net/article/details/132954789
[ 最后更新 ] 09/18/2023 1:45
[ 版权声明 ] 如果您在非 CSDN 网站内看到这一行,
说明网络爬虫可能在本人还没有完整发布的时候就抓走了我的文章,
可能导致内容不完整,请去上述的原文链接查看原文。
相关文章:

华为云云耀云服务器L实例评测|轻量级应用服务器对决:基于 fio 深度测评华为云云耀云服务器L实例的磁盘性能
本文收录在专栏:#云计算入门与实践 - 华为云 专栏中,本系列博文还在更新中 相关华为云云耀云服务器L实例评测文章列表如下: 华为云云耀云服务器L实例评测 | 从零开始:云耀云服务器L实例的全面使用解析指南华为云云耀云服务器L实…...

卸载Visual Studio 2010学习版 —— 卸载VCExpress
目录 最初安装Visual Studio 2010学习版是因为计算机二级 C语言考试而装,现如今考完试后便可卸载掉了,安装简便而卸载却没有uninstall.exe文件。故本文提供卸载方式。 进入到程序目录,找到setup.exe文件,也可以在程序目录搜索set…...

react的状态管理简单钩子方法
1.recoil useProvider文件: import { atom, useRecoilState } from recoil;const initState atom({key: initState,default: {state: [],}, })// 将业务逻辑拆分到一个单独文件中,方便进行状态管理 export interface StateProps {id: number;text: string;isFini…...

【Git】轻松学会 Git:深入理解 Git 的基本操作
文章目录 前言一、创建 Git 本地仓库1.1 什么是仓库1.2 创建本地仓库1.3 .git 目录结构 二、配置 Git三、认识 Git 的工作区、暂存区和版本库3.1 什么是 Git 的工作区、暂存区和版本库3.2 工作区、暂存区和版本库之间的关系 四、添加文件4.1 添加文件到暂存区和版本库中的命令4…...

什么是HTTP头部(HTTP headers)?
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 理解 HTTP 头部(HTTP Headers)⭐ HTTP 头部的分类⭐ HTTP 头部的应用⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦&#x…...

SpringCloud Alibaba 入门到精通 - Sentinel
SpringCloud Alibaba 入门到精通 - Sentinel 一、基础结构搭建1.父工程创建2.子工程创建 二、Sentinel的整合SpringCloud1.微服务可能存在的问题2.SpringCloud集成Sentinel搭建Dashboard3 SpringCloud 整合Sentinel 三、服务降级1 服务降级-Sentinel2 Sentinel 整合 OpenFeign3…...

【深度学习实验】前馈神经网络(三):自定义多层感知机(激活函数logistic、线性层算Linear)
目录 一、实验介绍 二、实验环境 1. 配置虚拟环境 2. 库版本介绍 三、实验内容 0. 导入必要的工具包 1. 构建数据集 2. 激活函数logistic 3. 线性层算子 Linear 4. 两层的前馈神经网络MLP 5. 模型训练 一、实验介绍 本实验实现了一个简单的两层前馈神经网络 激活函数…...
HJ68 成绩排序
描述 给定一些同学的信息(名字,成绩)序列,请你将他们的信息按照成绩从高到低或从低到高的排列,相同成绩 都按先录入排列在前的规则处理。 例示: jack 70 peter 96 Tom 70 smith 67 从高到低…...

FPGA——UART串口通信
文章目录 前言一、UART通信协议1.1 通信格式2.2 MSB或LSB2.3 奇偶校验位2.4 UART传输速率 二、UART通信回环2.1 系统架构设计2.2 fsm_key2.3 baud2.4 sel_seg2.5 fifo2.6 uart_rx2.7 uart_tx2.8 top_uart2.9 发送模块时序分析2.10 接收模块的时序分析2.11 FIFO控制模块时序分析…...

华为云Stack的学习(七)
八、华为云Stack存储服务介绍 1.云硬盘EVS 云硬盘(Elastic Volume Service,EVS),又名磁盘,是一种虚拟块存储服务,主要为ECS(Elastic Cloud Server)和BMS(Bare Metal Se…...
安装k8s集群
一、前置环境配置 安装两台centos 实验环境,一台pc配有docker环境,有两个centsos7容器,其中一个容器作为master,一个作为node。如果master与node都是用默认端口,会存在冲突,所以在此基础上做细微的调整。…...
C++中编写没有参数和返回值的函数
C中编写没有参数和返回值的函数 返回值为 void 函数不需要将值返回给调用者。为了告诉编译器函数不返回值,返回类型为 void。例如: #include <iostream>// void means the function does not return a value to the caller void printHi() {std…...

SWC 流程
一个arxml 存储SWC (可以存多个,也可以一个arxml存一个SWC)一个arxml 存储 composition (只能存一个)一个arxml 存储 system description (通过import dbc自动生成system) 存储SWC和composition的arxml文件分开&#…...

怒刷LeetCode的第10天(Java版)
目录 第一题 题目来源 题目内容 解决方法 方法一:两次拓扑排序 第二题 题目来源 题目内容 解决方法 方法一:分治法 方法二:优先队列(Priority Queue) 方法三:迭代 第三题 题目来源 题目内容…...

java框架-Springboot3-场景整合
文章目录 java框架-Springboot3-场景整合批量安装中间件NoSQL整合步骤RedisTemplate定制化 接口文档远程调用WebClientHttp Interface 消息服务 java框架-Springboot3-场景整合 批量安装中间件 linux安装中间件视频 NoSQL 整合redis视频 整合步骤 RedisTemplate定制化 Re…...

在Bat To Exe Converter,修改为当异常结束或终止时,程序重新启动执行
在Bat To Exe Converter,修改为当异常结束或终止时,程序重新启动执行 .bat中的代码部分: .bat中的代码echo offpython E:\python\yoloProjectTestSmallLarge\detect.pypause,我想你能帮在Bat To Exe Converter,修改成…...

PythonWeb服务器(HTTP协议)
一、HTTP协议与实现原理 HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种用于在网络上传输超文本数据的协议。它是Web应用程序通信的基础,通过客户端和服务器之间的请求和响应来传输数据。在HTTP协议中连接客户与服务器的…...

Northstar 量化平台
基于 B/S 架构、可替代付费商业软件的一站式量化交易平台。具备历史回放、策略研发、模拟交易、实盘交易等功能。兼顾全自动与半自动的使用场景。 已对接国内期货股票、外盘美股港股。 面向程序员的量化交易软件,用于期货、股票、外汇、炒币等多种交易场景ÿ…...

c语言进阶部分详解(经典回调函数qsort()详解及模拟实现)
大家好!上篇文章(c语言进阶部分详解(指针进阶2)_总之就是非常唔姆的博客-CSDN博客)我已经对回调函数进行了初步的讲解和一个简单的使用事例,鉴于篇幅有限没有进行更加详细的解释,今天便来补上。…...
win下 lvgl模拟器codeblocks配置
链接: 官方lvgl的codeblocks官方例子 下载慢的话,可能需要点工具。 需要下载的东西 https://github.com/lvgl/lv_port_win_codeblocks https://github.com/lvgl/lv_drivers/tree/4f98fddd2522b2bd661aeec3ba0caede0e56f96b https://github.com/lvgl/lvgl/tree/7a23…...

wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...

ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...

MFC 抛体运动模拟:常见问题解决与界面美化
在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...

【Linux系统】Linux环境变量:系统配置的隐形指挥官
。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量:setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...