我有一个由9个SATA3磁盘组成的RAID6arrays,7200RPM,4TB大小。 我把他们分成了Gparted Live作为GPT分区,从第一兆字节开始。
我很关心读取速度。 arrays上生成的±200TPS(由iostat 1报告)的磁盘等待时间超过20%。
服务器是Ubuntu 11.10,一个文件服务器,有99%的IO来自随机用户下载随机文件。
我发现这是一个exception大的等待时间,迫使大多数nginx进程进入D状态,从而使性能达到最佳状态。
我会很感激任何想法在哪里看,我感谢提前任何input。
问题解决了。
该arrays是健康的,但问题是在Nginx服务器的configuration。 Sendfile被“closures”。 在将sendfile切换到“on”时,服务器上的负载下降到1.5-2(8),arrays的TPS现在大约为±400。 现在所有进程都处于“S”状态,在将Sendfile切换为“on”之前,它们曾经处于“D”状态。 高峰stream量是在几个小时内,我会编辑这个评论,如果我发现这个答案是不正确的或错过任何。