为什么NFS挂载文件似乎是随机caching的,但是在运行`ls`时不再被caching呢?

这里是NFS挂载的挂载configuration,我们将其称为server2 ,从运行cat /etc/mtab

 <ip1>:/mnt/fs101 /mnt/fs101 nfs rw,relatime,rsize=1024,wsize=1024,timeo=14,intr,cto,acregmax=6,acdirmax=0,noac,acdirmin=0,vers=4,addr=<ip1>,clientaddr=10.0.0.201 0 0 

另一台机器(称为server1 )有更多的默认设置,但也挂载在NFS挂载。 当我在server1上用vim编辑文件,然后运行cat file.txt ,我通常会看到旧文件的内容(即不是编辑)。

如果我inputls -lserver2上的目录(看到旧内容的目录),然后再运行cat ,我现在看到更新的内容。

正如你所看到的, server2有效地closures了NFScaching。 这影响了很多机器,其中有许多(比如说7或8)有这个NFS挂载。 这些是在VMWare上运行的虚拟化CentOS 6机器。

我迷失在哪里去与这一个 – 它似乎可能与文件属性和ls文件运行统计有关,但我不知道如何能有效地“解决”这个问题。 我对一段时间的cachingperformance没问题,因为这些是web服务器(10-20s),但是现在是完全不可预知的。

更新:当检查正在呈现NFS装载的机器(即在上面)时,本机在服务器1上编辑后立即看到更新的文件内容