![NFS 缓存是按块读取还是按文件读取?](https://linux22.com/image/578383/NFS%20%E7%BC%93%E5%AD%98%E6%98%AF%E6%8C%89%E5%9D%97%E8%AF%BB%E5%8F%96%E8%BF%98%E6%98%AF%E6%8C%89%E6%96%87%E4%BB%B6%E8%AF%BB%E5%8F%96%EF%BC%9F.png)
我在 NFS 上存储了一个大图像。我只想读取图像的第一部分以获取标头。
NFS 客户端在获取所需的块后是否会停止读取,还是会从服务器接收整个文件?
答案1
在最简单的形式中,NFS 仅在网络上提供文件系统 API。
当您的应用程序开始从文件中读取数据时,您将向服务器发送读取命令,服务器将使用数据进行响应。当应用程序停止读取时,将不再有任何响应。
当然,引擎盖下还有更多的东西,特别是“预读缓冲区”,它读取的内容比要求的多一点,所以在随后不久需要它的常见情况下,它可能已经在等待了;但这是可配置的,而且通常很小(大约 64-512KB)
简而言之:如果您的应用程序不读取,就不会产生任何显著的无用流量。