Linux

在單個 Linux 伺服器上執行不同文件系統的性能影響

  • April 8, 2019

*《HBase:權威指南》*一書指出

不建議在單個伺服器上安裝不同的文件系統。這可能會對性能產生不利影響,因為核心可能必須拆分緩衝區高速記憶體以支持不同的文件系統。據報導,對於某些作業系統,這可能會產生毀滅性的性能影響。

這真的適用於 Linux 嗎?我從未見過大於 300 MB 的緩衝區記憶體,而且大多數現代伺服器都有千兆字節的 RAM,因此在不同文件系統之間拆分緩衝區記憶體應該不是問題。我還缺少其他東西嗎?

拆分緩衝區記憶體是有害的,但它的影響是微乎其微的。我猜它太小了,基本上無法測量。

您必須記住,不同掛載點之間的數據也是不可共享的。

雖然不同的文件系統使用不同的分配緩衝區,但分配記憶體並不是為了讓它看起來漂亮。來自slabtop執行 3 個不同文件系統(XFS、ext4、btrfs)的系統的數據:

OBJS ACTIVE 使用 OBJ SIZE SLABS OBJ/SLAB 記憶體大小名稱
42882 42460 99% 0.70K 1866 23 29856K shmem_inode_cache
14483 13872 95% 0.90K 855 17 13680K ext4_inode_cache
4096 4096 100% 0.02K 16 256 64K jbd2_revoke_table_s
2826 1136 40% 0.94K 167 17 2672K xfs_inode
1664 1664 100% 0.03K 13 128 52K jbd2_revoke_record_
1333 886 66% 1.01K 43 31 1376K btrfs_inode_cache
(許多其他對象)

正如你所看到的,任何非常大的記憶體都具有超過 90% 的使用率。因此,如果您並行使用多個文件系統,則成本大約等於失去 5% 的系統記憶體,如果電腦不是專用文件伺服器,則更少。

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