![md RAID5/vsftpd 的传输速度波动](https://linux22.com/image/1256752/md%20RAID5%2Fvsftpd%20%E7%9A%84%E4%BC%A0%E8%BE%93%E9%80%9F%E5%BA%A6%E6%B3%A2%E5%8A%A8.png)
我有一台 Ubuntu 8.04.4 服务器,带有一个由 9 个驱动器组成的 md RAID5。在向其传输大量数据(通过 vsftpd)时,我注意到传输速度波动非常大。
例如,在传输 20GB 的存档时,每传输几百 MB,传输就会完全停止几秒钟。然后它会恢复到 ~55MB/s。这种情况会不断重复;总传输速度大约为 10MB/s。
该服务器与我正在使用的机器位于同一个 1Gb LAN 上,因此我认为 LAN 不是问题所在。
过去,每当我必须传输大量数据(超过 200MB)时,我都多次观察到此服务器上的这种行为。
查看的输出iostat
或top
我们的 Cacti 图表并没有给我任何可能导致此问题的迹象。
如果您能提供任何关于如何诊断此类问题的想法,我们将不胜感激。
答案1
说实话,我不会使用 FTP 传输来测量速度 - 这是一种过时的协议,如果它减慢了你的速度,我不会感到惊讶。
您可以使用 NFS 导出目录并尝试以这种方式传输文件吗?
答案2
ftp 和 samba 均不使用压缩。使用带有 --progress 和 -Z 标志的 rysnc,以便使用压缩并报告进度。
如果大量数据不是大量文件而是少量大文件(>2GB),则问题可能与稀疏文件有关。
当速度较慢时还要检查“more /proc/mdstat”,以确保速度不会因 md 阵列重新同步而变慢。
答案3
我仍然不知道问题的根本原因是什么。最后我怀疑系统的 CPU 太弱了(平均负载高,CPU 负载高)。
今天我将系统升级到 Ubuntu 10.04,问题似乎已经解决。性能仍然不如我希望的那样稳定,但平均而言至少提高了 10 倍。