美文网首页
NFS 一台有文件、一台没文件

NFS 一台有文件、一台没文件

作者: 偷油考拉 | 来源:发表于2022-01-28 11:13 被阅读0次

某系统前置机下载文件到NFS存储,并检测文件存在;后置机随后跑批提示没有发现改文件。

https://blog.csdn.net/kosmosas/article/details/70241451
http://blog.chinaunix.net/uid-10565106-id-3402319.html

参考资料: 源自 nfs man

The sync mount option

NFS client 对待 sync 挂载参数与其他系统有些区别(参见 mount(8) 查看关于通用sync和async挂载参数的描述)。 如果都不指定(或者只指定 async 参数),NFS client 会推迟发送应用的写入到服务器,直到如下事件发生:

  • 内存压力迫使系统内存资源回收

  • 应用程序通过sync(2), msync(2), or fsync(3)显示刷新文件数据

  • 应用程序通过close(2)关闭一个文件

  • 文件通过fcntl(2)被锁定/解锁

换句话说,正常情况下,应用写入的数据不会立即显示在保存文件的服务器上。

如果在挂载点上配置了 sync 参数,任何写入数据到挂载点文件的系统调用都会导致,系统调用在返回控制权给用户空间之前,数据刷新到服务器。这给 clients 提供了很好的数据缓存一致性,但是性能代价很高。

应用可以使用 O_SYNC open flag 来强制应用对单个文件的写入立即转到服务器而无需使用sync挂载配置项。


 ac / noac        配置客户端是否缓存文件属性。如果都没有配置(或者配置 ac),client 将缓存文件属性。

                  为了提升性能,NFS clients 会缓存文件属性。每隔几秒钟,NFS  client 会检查服务器上的文件属性版本以获取更新。
                  直到client再次检查服务器前,在这些小间隔内发生在服务器上的变动仍然没有被检测到。
                  noac 配置项阻止了 clients 缓存文件属性,这样应用可以快速的检查服务器上文件的变动。

                  除了阻止 client 缓存文件属性,noac 配置项还强制应用同步写入,这样本地文件变更可以立即在服务器上可见。
                  这样,其他 clients 检查文件属性的时候就可以快速的发现最近的写入操作了。

                  使用 noac 配置项可以在访问同一文件的 NFS clients 之间提供更高的缓存一致性,但会导致显著的性能损失。
                  因此,鼓励适当的使用文件锁。
                  数据和元数据一致性部分详细讨论了这些权衡。

rsize=n        The maximum number of bytes in each network READ request that the NFS client can receive when reading data
                  from  a  file  on  an  NFS  server.   The actual data payload size of each NFS READ request is equal to or
                  smaller than the rsize setting. The largest read payload supported by the Linux NFS  client  is  1,048,576
                  bytes (one megabyte).

                  The  rsize  value  is  a  positive  integral multiple of 1024.  Specified rsize values lower than 1024 are
                  replaced with 4096; values larger than 1048576 are replaced with 1048576. If a specified value  is  within
                  the supported range but not a multiple of 1024, it is rounded down to the nearest multiple of 1024.

                  If an rsize value is not specified, or if the specified rsize value is larger than the maximum that either
                  client or server can support, the client and server negotiate the largest rsize value that they  can  both
                  support.

                  The  rsize  mount option as specified on the mount(8) command line appears in the /etc/mtab file. However,
                  the effective rsize value negotiated by the client and server is reported in the /proc/mounts file.

   wsize=n        The maximum number of bytes per network WRITE request that the NFS client can send when writing data to  a
                  file  on an NFS server. The actual data payload size of each NFS WRITE request is equal to or smaller than
                  the wsize setting. The largest write payload supported by the Linux NFS client  is  1,048,576  bytes  (one
                  megabyte).

                  Similar  to rsize , the wsize value is a positive integral multiple of 1024.  Specified wsize values lower
                  than 1024 are replaced with 4096; values larger than 1048576 are replaced with  1048576.  If  a  specified
                  value is within the supported range but not a multiple of 1024, it is rounded down to the nearest multiple
                  of 1024.

                  If a wsize value is not specified, or if the specified wsize value is larger than the maximum that  either
                  client  or  server can support, the client and server negotiate the largest wsize value that they can both
                  support.

                  The wsize mount option as specified on the mount(8) command line appears in the /etc/mtab  file.  However,
                  the effective wsize value negotiated by the client and server is reported in the /proc/mounts file.

相关文章

  • NFS 一台有文件、一台没文件

    某系统前置机下载文件到NFS存储,并检测文件存在;后置机随后跑批提示没有发现改文件。 https://blog.c...

  • 大型网站架构

    三、网站初级架构 一般网站,刚开始的做法,是三台服务器,一台部署应用,一台部署数据库,一台部署NFS文件系统。 这...

  • 大型网站图片服务

    PDM图片服务空间性能及解决方案 现状: 目前PDM图片服务是由一台NFS文件系统共享,一台归档服务器 1、主服务...

  • sftp上传文件时间不一致

    sftp 上传文件时间不对 现象: 有一台linux机器作为sftp客户端 有一台linux机器作为sftp服务器...

  • NFS+NTP

    一,NFS网络文件系统1,NFS服务端概述NFS(network file system),网络文件系统,网络文件...

  • NFS挂载

    账号服务器使用autofs自动挂载NFS共享的家目录 两台主机,一台提供用户账号信息,一台主机通过NFS共享提供家...

  • centos 7 k8s安装nfs 服务器与客户端 nfs动态存

    NFS介绍概述  网络文件系统(Network File System, NFS),是基于内核的文件系统,nfs主...

  • day34 NFS的配置和搭建

    NFS网络文件系统 1、介绍NFS 1、什么是NFS 全称 network file system 网络文件系统通...

  • 《计算机网络——自顶向下方法》应用层——文件传输协议:FTP

    文件传输协议:FTP 典型的FTP会话中,用户坐在一台本地主机前面,向一台远程主机传输/接收文件,为了使用户能够访...

  • Linux间访问共享文件夹2018-12-05

    首先在一台linux上安装samba服务,并设置共享文件夹。 另外一台linux 要访问共享文件夹按如下步骤:ap...

网友评论

      本文标题:NFS 一台有文件、一台没文件

      本文链接:https://www.haomeiwen.com/subject/jsulgktx.html