У меня есть сервер человечности 14,04 установленных в моем сервере. И у меня есть vsftpd сервер, которые обеспечивают тест файла загрузки для тестирования цели. мой вопрос состоит в том, почему, если клиент загружает файл ftp, мой поршень сервера увеличивать быстро соответствует пользовательской загрузке, и затем это остается в том же значении после пользовательской загрузки конца, там способ предотвратить его?
Вот получение моего использования оперативной памяти.
ipeph@ServiceOperationCenter:~$ free -m
total used free shared buffers cached
Mem: 9748 6018 3720 10 141 5679
-/+ buffers/cache: 392 9354
Swap: 893 0 893
ipeph@ServiceOperationCenter:~$ date
Thu Nov 19 09:44:37 WIB 2015
ipeph@ServiceOperationCenter:~$ free -m
total used free shared buffers cached
Mem: 9748 6113 3619 10 141 5679
-/+ buffers/cache: 395 9350
Swap: 893 0 893
ipeph@ServiceOperationCenter:~$ date
Thu Nov 19 09:44:57 WIB 2015
ipeph@ServiceOperationCenter:~$ free -m
total used free shared buffers cached
Mem: 9748 6213 3534 10 141 5679
-/+ buffers/cache: 402 9355
Swap: 893 0 893
ipeph@ServiceOperationCenter:~$ date
Thu Nov 19 09:45:03 WIB 2015
Ядро Linux сохранит данные файла кэшируемыми в памяти в случае, если к этому получают доступ снова. Со временем данные будут отброшены, если к ним не получат доступ, или другие процессы требуют памяти. Кэшируемая статистика показывает, сколько данных находится в кэше. Я не чрезмерно обеспокоить этим.
, Если Вы действительно хотите отбросить кэшированные данные (который не желателен, так как можно освобождать кэшированные данные и следовательно ядро должно будет перечитать их снова), можно записать 1 в/proc/sys/vm/drop_caches к свободному pagecache.
Для освобождения pagecache:
echo 1 | sudo tee /proc/sys/vm/drop_caches
Для освобождения исправимых объектов плиты (включает dentries и inodes):
echo 2 | sudo tee /proc/sys/vm/drop_caches
Для освобождения объектов плиты и pagecache:
echo 3 | sudo tee /proc/sys/vm/drop_caches
В free
вывод, самое важное число + buffers/cache
который является free + buffers + cached
, это указывает на память, доступную Вашим приложениям при необходимости.
- buffers/cache
== используемый - буферы - кэшировались, который является хорошим признаком памяти, занятой приложениями
Linux (ядро) использует неиспользованную память для кэша страницы (и кэш-буфер - это все еще существует) к для производительности.
free
-> не используемый для чего-либо
echo 3 > /proc/sys/vm/drop_caches
освобождает pagecache, dentries и inodes, который возвратит память, используемую для кэша страницы / кэш-буфер к "свободному".
buffers
и cached
отбросит и free
увеличится, однако, который не означает, что Вы имеете больше памяти в наличии для приложений.
Для получения дополнительной информации проверьте Linux в моей RAM!
BTW: Fedora и Дуга использование Linux
free
отprocps-ng
вывод отличается.
Вывод комбинирует любителя/кэш и удаленный несколько запутывающее -/+ buffers/cache
.
Мы можем ясно видеть buff/cache
отброшенный, но available
НЕ изменился, который имеет намного больше смысла к конечным пользователям. Я лично думаю, что это - лучшая реализация/интерпретация.
# free -m
total used free shared buff/cache available
Mem: 1874 117 18 1 1737 1708
Swap: 0 0 0
# echo 3 > /proc/sys/vm/drop_caches
# free -m
total used free shared buff/cache available
Mem: 1874 117 1654 1 102 1708
Swap: 0