
Я запускаю веб и базу данных на одном сервере с 4 ГБ оперативной памяти. Когда я проверил память с помощью free -m, я увидел, что большая часть памяти находится в кэше.
free -m
total used free shared buff/cache available
Mem: 3534 1507 973 25 1052 1676
Swap: 8191 0 8191
Есть ли способ узнать, какой процесс обслуживается из кэша, а какие получают кэш, потому что каждый раз мне приходится использовать команду sync для очистки свободной памяти.
решение1
В общем, вам следуетнетсделай это.Свободная память — это неиспользуемая память., бесполезный ресурс. Ядро знает, что делает: пока нет лучшего применения для памяти, оно будет использовать ее для буферов ввода-вывода или дискового кэша. Когда процессу потребуется больше памяти для выполнения процессов, ядро автоматически выделит ее.
Если только ты не можешьмерадисбаланс между использованием пространства подкачки и памяти, не следует вмешиваться в параметры распределения памяти.