Linux tmpfs 对性能没有影响!

Linux tmpfs 对性能没有影响!

为了加快 JBoss 的启动和使用速度,我将<jboss-home>目录的内容复制到足够大的tmpfs“磁盘”中。这样一来,我期望速度会显著提高。

然而令我惊讶的是,我看到一点也没有改进——无论是启动时间还是后续应用程序的使用。

我如何創造tmpfs

$ mkdir /usr/local/tmpfs-disk
$ mount -t tmpfs -o size=2048m tmpfs /usr/local/tmpfs-disk
$
$ cd /usr/local
$ ln -s tmpfs-disk foo
$ ls -ld foo
lrwxrwxrwx 1 root root 9 Jul 21 00:09 foo -> tmpfs-disk
$
$ cp -a <jboss-home>/* foo/

确认

$ mount
   ...
tmpfs on /usr/local/tmpfs-disk type tmpfs (rw,size=2048m)
$ df -h
Filesystem            Size  Used Avail Use% Mounted on
   ...
tmpfs                 2.0G  1.3G  785M  62% /usr/local/tmpfs-disk

我正在使用 Fedora 12。

我在这里遗漏了什么?

短暂性脑缺血……

答案1

要么您实际上并没有使用 tmpfs(可能是因为您实际上并没有运行复制到 ramdisk 的应用程序副本,但还有其他可能性,我会让您探索),要么您的性能瓶颈根本不是磁盘。

答案2

现代操作系统在 RAM 中缓存内容方面实际上相当不错。确保这一点的最佳方法是强制清除缓存(来自另一个堆栈溢出:sync && echo 1 > /proc/sys/vm/drop_caches),然后启动(实际上只是启动)会更快。

答案3

尝试使用 vmstat 检查您的内存是否正在交换到磁盘。

如果是,那么您可以尝试调整 Fedora 内核 vm.swappiness 值。默认情况下,RHEL 上的值为 60。尝试将其更改为零。

该内核参数决定内存页面交换到磁盘的积极程度。

相关内容