fsck音量需要多长时间?

Modified on: Tue, 03 Sep 2019 20:20:02 +0800

我们正在运营一个目前提供3-5百万次网页浏览量的网站。我们的网站是一个文件共享网站,因此它包含250,000个文件和几千个符号链接。

硬盘是1500GB SATA磁盘。

使用hdparm,我们发现我们的硬盘速度已降至15-20 MB / s,80 MB /秒。

所以现在我们要运行fsck来修复磁盘问题。

  1. fsck会解决这个问题吗?
  2. fsck需要多长时间才能完成(只是我们想要计算我们将要拥有的停机时间)?
  3. 醇>

最佳答案

随着同时访问的文件数量的增加,预计速度会降低。硬盘驱动器不喜欢并行访问:每次读/写头需要切换柱面时,都会丢失几毫秒。即使两个文件位于同一个柱面上,甚至是同一个轨道上,您仍可能需要等待一个旋转从一个旋转到另一个。如果以每秒兆位为单位测量驱动器性能,则预计随着并行访问的增加,驱动器性能会呈指数级下降。

fsck对此没有帮助:它只修复目录结构的损坏,它不执行任何优化。

理想的解决方案是切换到固态存储,因为它没有旋转盘片的任何物理限制。但这可能是成本过高的。

下一个最好的方法是使用针对并行访问优化的RAID。请记住,可以为许多不同的性能配置文件配置RAID,因此您需要花一些时间来了解任何给定RAID硬件和驱动程序的设置。

您可以使用激进的文件系统缓存来减少问题。如果你的系统有足够的内存,linux应该已经做得相当好了。运行像top这样的程序,看看有多少可用RAM。但是,如果最常用的文件不适合RAM(或者你可能获得的任何RAM),这对你来说无济于事。

穷人的解决方法是将文件分成几个不同的物理硬盘驱动器(不只是同一驱动器上的不同分区)。这不是一个长期可扩展的解决方案,并且最终会让你失去一个体面的RAID。但如果你有驱动器,它可能是一个快速解决方案。

对于涉及硬盘驱动器的任何解决方案,请确保它们具有快速旋转速度和低寻道延迟。

我在这里写了一篇关于硬盘性能的一般背景的文章:

UNIX提示 - 文件系统

作者:Seth Noble

相关问答

添加新评论