Linux автоматически файлы кэшей, считанные из диска. Тот кэш называют буферами. Буферы будут выпущены, если Ваша программа захочет больше памяти, и ничто больше не свободно.
Я не знаю то, что означает кэшируемая подкачка.
Править: Я погуглил вскоре для подкачки и видел следующее: http://www.linux-tutorial.info/modules.php?name=MContent&pageid=314
Кажется, что кэшируемая подкачка означает все страницы в подкачке, которые перезагружаются в память, но неизменные с тех пор. Эти страницы в подкачке уже допустимы и если страница выгружается позже снова, Linux не должен писать им на самом деле в диск.
установите Ваш, истекает тег к
expires off;
и это не должно устанавливать, любой истекает заголовки вообще, это могли также быть Ваши файлы кэширования браузера неправильно
Это поздно, но все еще помечено как неотвеченное, поэтому я приму удар. Просто для смеха, пробовали ли вы:
location ~* \.(css|js)$ {
expires 0;
break;
}
Сам не пробовал, но научился пробовать такие вещи с Nginx в серверном контейнере время от времени, когда у меня возникают проблемы, подобные этой ...
Поскольку ответ каким-то образом скрыт в вопросе - вот решение для nginx в среде VirtualBox в качестве отдельного ответа.
В вашей конфигурации nginx (обычно /etc/nginx/nginx.conf) или в файле конфигурации vhost измените параметр sendfile
в off
:
sendfile off;
Хотя sendfile
лежит в основе славы Nginx (молниеносная эффективность низкоуровневого статического обслуживания файлов), он может быть вред для местного развития, например Javascripts, которые часто меняются и требуют перезагрузки. Тем не менее, sendfile Nginx умен и, вероятно, не проблема большинства людей; проверьте также параметр вашего браузера «отключить кеш»!
Если ничего из упомянутого выше не помогает, но Nginx по-прежнему возвращает старое содержимое ваших файлов, это может быть проблема, связанная с open_file_cache
.
См. Ссылку:
Это старая ошибка в VirtualBox (см .: # 819 , # 9069 , # 12597 , # 14920 ), где vboxvfs, похоже, имеет некоторые проблемы с доступом через mmapped к синхронизированным файлам.
Это может произойти, если вы редактируете файл вне виртуальной машины и ожидаете увидеть такое же изменение внутри виртуальной машины.
] Чтобы обойти эту проблему, вам необходимо отключить поддержку ядра sendfile для доставки файлов клиенту, отключив опцию EnableSendfile
. Это особенно важно для файлов, смонтированных по NFS или SMB.
Для Nginx
(изменение в nginx.conf
), например
sendfile off;
Аналогично для Apache (в httpd. conf
или в файле vhosts), например
<Directory "/path-to-nfs-files">
EnableSendfile Off
</Directory>
После изменения перезагрузите Apache.
Другое возможное решение - просто не редактировать файлы на хосте или пытаться повторно редактировать тот же файл, но внутри ВМ.
Другой обходной путь включает удаление кеша страниц Linux, например
echo 1 > /proc/sys/vm/drop_caches
Или для очистки кешей каждую секунду (согласно в этом сообщении ) попробуйте:
watch -n 1 $(sync; echo 1 > /proc/sys/vm/drop_caches)
Примечание. Номер 1 означает освобождение кеша страниц, 2 для dentries и inodes, 3 для pagecache, dentries и inodes.
Вышеупомянутая проблема может быть воспроизведена следующей программой mmap-test, см .: mmap-problem.c
.