我正在尝试弄清楚我的 NFSv3 部署是否正在执行 SAFE 异步写入。我怀疑它正在执行严格的同步写入,因为总体而言,我的性能很差。我使用 Wireshark 查看写入调用中的“稳定”标志,并查找“提交”调用。
我注意到,当块大小特别大时,写入似乎是异步执行的:
dd if=/dev/zero of=/path/to/share/zero bs=2097152 count=512
然而,较小的块大小似乎严格同步执行:
dd if=/dev/zero of=/path/to/share/zero bs=8192 count=655360
发生了什么?客户端如何决定是否告诉服务器同步或异步执行写入?有什么方法可以让较小的块大小异步执行吗?
编辑:这是客户端上 /etc/fstab 的内容:
server:/path/to/share /path/to/share nfs rw,intr,sync,proto=tcp,vers=3 0 0