RAM 中使用的内存量存储在 Cache 中。有什么方法可以在不增加缓存的情况下手动增加 RAM 使用量。在下面的示例中,增加 RAM 也增加了缓存。
Mem: 3924040k total, 1396308k used, 2527732k free, 74224k buffers
Swap: 4063228k total, 0k used, 4063228k free, 512984k cached
(Consuming 1GB of RAM by filling shared memory space)
[root@localhost ~]# dd if=/dev/zero of=/dev/shm/fill bs=1k count=1024k
After
Mem: 3924040k total, 2447640k used, 1476400k free, 74248k buffers
Swap: 4063228k total, 0k used, 4063228k free, 1561652k cached
答案1
尝试下面的代码,
默认值为 60。如果将其设置为 0,则意味着即使 RAM 使用了 100%,也永远不会使用缓存。
要检查当前的交换级别,
cat /proc/sys/vm/swappiness
要更改默认值,
echo 10 > /proc/sys/vm/swapiness ( lost on reboot )
vim /etc/sysctl.conf ( Permanent solution )
vm.swappiness = 10