微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在单个Linux服务器上运行不同文件系统的性能影响

“HBase:权威指南”一书指出

Installing different filesystems on a single server is not recommended.
This can have adverse effects on performance as the kernel may have to
split buffer caches to support the different filesystems. It has been reported that,for certain operating systems,this can have a devastating
performance impact.

这真的适用于Linux吗?我从未见过大于300 MB的缓冲区缓存,大多数现代服务器都有数GB的RAM,因此在不同的文件系统之间拆分缓冲区缓存应该不是问题.我错过了别的什么吗?

解决方法

拆分缓冲区缓存是有害的,但它的影响很小.我猜它太小了,基本上不可能测量.

您必须记住,不同挂载点之间的数据也是不可共享的.

虽然不同的文件系统使用不同的分配缓冲区,但它并不像分配内存只是坐在那里看起来漂亮.来自slabtop的数据,用于运行3个不同文件系统(XFS,ext4,btrfs)的系统:

  OBJS ACTIVE  USE OBJ SIZE  SLABS OBJ/SLAB CACHE SIZE NAME 
 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
(many other objects)

如您所见,任何真正相当大的缓存的利用率都超过90%.因此,如果您并行使用多个文件系统,则成本约等于减少5%的系统内存,如果计算机不是专用文件服务器则更少.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐