我刚刚安装了一个通过 NFS 将 HTTP 视频流文件发送到 Web 服务器的服务器,我想确保我的传输速度得到优化。但我不知道什么样的读/写速率是典型的,所以我不知道我是否已经接近最大值。据我所知,wsize和rsize参数是重要的,但我不知道他们在默认为,如果它的价值改变它们。
根据有关 NFS 的 sourceforge 文章,我使用以下方法测试了写入速度:
time dd if=/dev/zero of=/mnt/data/video/testfile bs=16k count=16384
Run Code Online (Sandbox Code Playgroud)
我的写入速率为48MB/s。
我对此进行了多次测试(卸载/安装以清除缓存)并且此速度相当一致。
我测试了读取速度:
time dd if=/mnt/data/video/testfile of=/dev/null bs=16k
Run Code Online (Sandbox Code Playgroud)
并获得117MB/s的读取速率
以太网交换机和所有电缆都适用于 1Gb/s,并且两台机器上的 NIC 都设置为使用巨型帧(MTU=9000),并且在 /etc/exportfs 中我设置了async选项 - 速度对我来说比完美的数据更重要正直。两台机器都是相当标准的 HP Proliant,配备 7.2K SATA 驱动器(一个是 3G,另一个是 6G)。两台机器都使用Linux 2.6.18。发送文件的机器运行 CentOS 5.5,接收文件的机器运行 RHEL 5.4 (Tikanga)。
我希望测试过许多不同系统的人可以说出上述数字是否是 NFS 数据传输的典型值,或者是否有足够的空间来增加它们。