Linux:内存是空闲的,但使用了交换。为什么?

Pav*_*gin 11 linux memory

这是穆宁的图表。

内存使用:http : //koryagin.com/w/q/memory-day.png

换入/出:http : //koryagin.com/w/q/swap-day.png

当 RAM 大小远大于程序使用的内存时,为什么 Linux 决定增加缓存并使用交换?

Jan*_*nen 17

您的服务器可能有一些内存占用和/或非活动进程,其中包含许多非活动页面。Linux 内核更喜欢换出程序的非活动部分进行交换,因为很可能内存更适合用作缓存。

如果您想改变这种行为,请使用vm.swappinesssysctl tunable 但要注意,要智胜内核开发人员/发行版维护人员并不是那么容易。:-)

在交换高峰期间,您的服务器是否有性能问题,还是出于好奇而询问?