Distributed-Filesystems

NFS 讀取記憶體如何在 Debian 上工作?

  • April 3, 2010

我打算使用 NFS 來提供許多小文件。它們會經常被讀取,因此客戶端記憶體至關重要。NFS 會處理這個嗎?有沒有辦法以某種方式增加客戶端記憶體?

…或者我應該看看另一種解決方案?定期使用 rsync 或 unison 同步不是一種選擇,因為文件會不時在客戶端進行修改。

首先,NFS 不提供記憶體一致性,因此如果您需要,您必須尋找其他地方。

NFS 指定的是一個較弱的模型,稱為接近開放一致性。這意味著當文件關閉時,所有臟數據都會刷新到伺服器。相反,當打開文件時,會執行屬性檢查,這意味著如果客戶端記憶體了該文件中的頁面,它會檢查這些頁面是否仍然有效。

雖然不在規範本身中,但大多數 NFS 客戶端都有一個稱為屬性記憶體超時的東西,即在客戶端聯繫伺服器以重新驗證它們之前,目錄或打開文件的屬性可以存在多長時間。在 Linux 上,請參閱 actimeo= 等掛載選項。較高的值允許更積極的記憶體,但如果其他客戶端同時更新了文件,則會增加使用陳舊數據的風險。

引用自:https://serverfault.com/questions/127615