我在 NAS 挂载(来自 NetApp)上有一个目录,其中包含约 6300 个图像文件,该目录的总大小约为 300 MB。我得到了两种不同的表现time ls
:
第一次(或等待 5-7 分钟后):
time ls
real 0m4.505s
user 0m0.061s
sys 0m0.258s
后续时间:
time ls
real 0m0.340s
user 0m0.038s
sys 0m0.075s
我对存储和磁盘相当陌生,但我的问题是:
- 是什么导致
ls
在某些情况下速度慢而在其他情况下快 10 倍以上? - 我该如何解决这个问题?
更新:
以下是我从系统管理员那里得到的有关 NAS 如何安装的信息:
nashost:/vol/cmsprd/files /app/files nfs noquota,proto=tcp 0 0
这是我在主机上看到的“nfs”运行情况:
ps -ef | grep nfs
root 3234 2 0 Mar21 ? 00:00:02 [nfsiod]
我仍在寻找连接速度。
谢谢!
答案1
这可能是由于 HD 降速造成的。
某些系统具有这样的功能,即硬盘处于不活动状态(不写入也不读取)一段时间后,将以物理方式将此类驱动器的旋转速度降至完全停止。这是为了延长硬盘的使用寿命(减少机械磨损 = 降低故障的可能性)。
等待 5-7 分钟后,您会观察到速度减慢了 4/5 秒,因此这 5 分钟可能是设备的减速时间。 5 秒等待是驱动器完全旋转以准备好访问的时间。
当 HHD 旋转时,您甚至可以听到 NAS 外壳中没有噪音(嗡嗡声)。
尝试在此 NAS 管理页面(或其他页面)中搜索是否有诸如“HD spindown time”之类的参数需要更改。
答案2
IIRC,ls
的输出被缓存。
您与 NAS 的连接速度有多快?这可能是其中的一部分。文件系统和硬盘速度也可能与此有关。您能提供更多信息吗?