Прозрачное кэширование и автономные файлы в Windows 7 и Windows 2008 R2

Введение
Одной из важнейших задач IT-департамента является организация доступа к файловым ресурсам предприятия. В большинстве случаев документы хранятся централизовано на выделенном для этих целей файловом сервере. Это позволяет осуществлять контроль за безопасностью и структурой хранимых данных, а также упрощает их резервное копирование. Для удобства работы, ресурсы файлового сервера могут быть перенаправлены в личные папки сотрудников, такие как: «Мои Документы», «Рабочий стол» и.т.п.
Для оптимизации процесса доступа в Windows 7 и Windows 2008 R2 используются прозрачное кэширование и автономные файлы. Рассмотрим их более подробно.
Прозрачное кэширование
При традиционной схеме работы, пользователь открывая документ, находящийся на файловом сервере, должен предварительно скопировать его на свой компьютер. Данная операция выполняется автоматически и обычно проходит незаметно. Исключением из этого могут быть случаи когда пропускная способность сети или размер файла не позволяют быстро загрузить его на клиентский компьютер. В таких условиях открытие документа может занять достаточно длительное время, в течении которого канал связи между файловым сервером и компьютером будет загружен операцией копирования. В случае если пользователь закроет файл и откроет его заново, процедура скачивания повторится. Таким образом, многократное открытие одного и того же файла может привести к значительному замедлению рабочих процессов предприятия. Даже если этот файл открывается только для чтения и никаких изменений в процессе работы с ним не происходит.
Технология прозрачного кэширования позволяет сохранить единожды открытые файлы в локальном кэше компьютера и избежать повторного скачивания при последующих запросах на чтение.
Для обеспечения актуальности предоставляемой информации, при каждом запросе проверяется идентичность файла на сервере и в кэше локального компьютера. Это позволяет отследить произошедшие изменения и предоставить пользователю последнюю версию документа. Одновременно с этим проверяется права доступа к запрашиваемому файлу. В случае недоступности сервера хранения данных, локальная копия также будет недоступна.
По умолчанию прозрачное кэширование отключено. Для включения и настройки можно использовать групповые политики (рис. 1).
Рис. 1. Настройка прозрачного кэширования в групповых политиках
Политика, отвечающая за включение прозрачного кэширования находится в разделе:
Там же можно задать величину минимальной сетевой задержки, при которой будет использоваться данная технология.
Автономные файлы
Автономные файлы позволяют работать с документами даже при недоступности файлового сервера. Более подробно ознакомиться с принципами их работы можно в статье «Автономные файлы».
В Windows 7 появилась возможность автоматической синхронизации в фоновом режиме, не требуя от пользователей выбора между обычным и автономным режимами работы. Настроить это можно при помощи групповых политик (см. рис. 2).
Рис. 2. Настройка фоновой синхронизации
Политика, отвечающая за её настройку, называется «Настроить фоновую синхронизацию» и находится в разделе
Фоновая синхронизация применяется при работе в режиме медленного соединения. Данный режим настраивается политикой «Настроить режим медленного подключения«, расположенной в том же разделе. Порядок его настройки представлен в статье «Новые возможности работы с автономными файлами в Windows Vista». Там же достаточно подробно рассказано о реализации этой технологии в операционной системе Windows Vista.
Кроме того, в Windows 7 и Windows 2008 R2 стало возможно исключить из кэширования определенные типы файлов (см. рис. 3).
Рис. 3. Настройка исключения из кэширования определенных типов файлов
В поле «Расширения:» нужно задать исключаемые типы файлов. Например: *.mp3.
Таким образом, используя новые возможности работы с сетевыми файловыми ресурсами, можно значительно уменьшить время доступа к ним и объем передаваемой по сети информации.
Дополнительные ресурсы
Статья опубликована в рамках конкурса «Наш выбор — Windows 7!». Оригинальный стиль автора сохранен.
Маленький блог скромного айтишника.
Частенько сталкиваюсь с проблемой когда компьютер видит не все папки и документы на сетевом диске. Пере подключение сетевого диска не помогает..
Обычно в такой ситуации спасает отключение автономных файлов на клиентской машине.
Автономные файлы — это сетевой механизм, позволяющий получить доступ к файлам пользователей, которые подключаются к сети периодически, при отключении сервера, потери связи. Иными словами работать с сетевыми ресурсами, даже если эти ресурсы недоступны либо отключены от сети.
Все бы хорошо но проблема с ними частенько…
Заходим в «Панель управления» -> «Центр синхронизации». Слева сбоку пункт «Управление автономными файлами», кнопка «Отключить автономные файлы».

Есть еще более жестки способ.
Нужно запустить «Редактор локальной групповой политики» ( выполнить gpedit.msc) и внести изменения в реестр.
«Конфигурация компьютера/Административные шаблоны/Сеть/Автономные файлы», отключаем элементы параметров «Автономных файлов»:
В реестр вносим изменения командой, выполненной с правами администратора:
REG ADD «HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\NetCache» /v FormatDatabase /t REG_DWORD /d 1 /f
После перезагрузки системы, «Автономные файлы» будут недоступны навсегда.
Отключение автономных файлов Windows 7 : 4 комментария
Только опция «Отключить всплывающие напоминания» должна быть в положении Вкл.
Как отключить кэширование файлов в Windows?


Дело в том, что это кэширование файлов приводит к тому, что все последующие обращения к одному и тому же файлу происходят намного быстрее. Но кэширование работает именно на уровне файлов, это стоит учесть, ибо например утилита PrimoCache (которой кстати я давно уже пользуюсь, она позволяет создать кэш из ОЗУ для жесткого диска), так она кэширует как бы не файлы, а блоки файловой системы. Как по мне, то эффективность кэширования блоков куда выше, чем файлов.
Но как бы там не было, отключать кэширование я все равно не советую, потому что так бы сказать это базовое кэширование и оно очень необходимо. Мы не знаем эффект от него, не видим просто потому, что оно по умолчанию уже включено. Даже в Windows XP по умолчанию включено это кэширование. Вот если бы винда устанавливалась с отключенным кэшированием, то потом, после некоторого времени, если бы вы включили кэширование, то вы стопудово заметили бы ускорение работы системы
Я писал, что виндовское кэширование не до конца изучено, ну или о нем просто мало есть инфы. Что я это имел ввиду? По моим наблюдениям, виндовское кэширование это нечто большее чем просто кэширование файлов. После включения кэширования его я не замечаю взрыв производительности, нет, такого нет, но то что оболочка работает быстрее, это факт. То что программы чуть быстрее открываются и закрываются, это тоже факт. Мелкие файлы также легче копировать. Загрузка рабочего стола со всеми процессами, прогами которые стоят в автозагрузке, то все это происходит немного быстрее при включенном виндовском кэшировании. Почему так, я не знаю. Но уверен, что кэширование нужно не только для файлов! Возможно что кэшируются данные, с которыми работают те или иные программы, кэшируются вызовы команд, библиотеки, ну и все остальное такое эдакое. Вы уж извините, может я и бред написал, но я вот так думаю.
Поэтому даже используя утилиту PrimoCache, я все равно не отключаю виндовское кэширование. И вам советую. Правда есть разговоры в интернетах, что в Windows 7 такое кэширование потребляет много оперативы и потом назад эту память не отдает. Ну, честно вот скажу, никогда ничего подобного у меня не было, и очень странно, ведь я с компьютером почти не расстаюсь..
Ну так вот, теперь по поводу настроек. В винде есть два вида кэширования, это кэширование дисков и кэширование файловой системы. Или это одно и тоже, я честно говоря не знаю, но вроде бы это разные настройки. То есть чтобы полностью включить или отключить кэширование в Windows, нужно пройтись по этим обоим настройкам.
Итак, первая настройка, это служба SuperFetch. Именно эта служба и обеспечивает кэширование файловой системы в виндовс. Я лично ее не отключал, вернее я пробовал ее отключить, но пришел к выводу, что лучше ее оставить включенной. Вы тоже можете провести эксперимент: отключите службу и поработайте за компом несколько недель, а потом ее включите и сравните работу. Может вы заметите разницу, а может быть и не заметите. Кому как, но если комп работает быстрее и без службы SuperFetch, то думаю что нет смысла вам ее включить. В принципе все логично..
Я сейчас покажу как отключить SuperFetch в Windows 10, но также само все можно сделать и в Windows 7. Можно ли отключить в Vista, я, честно говоря не знаю.. Но думаю что можно.. Ну так вот, открываете диспетчер задач и там идете на вкладку Службы, где нажимаете кнопку Открыть службы:
Теперь тут находим службу SuperFetch (кстати она еще называется SysMain, так что теперь знайте что это за служба) и нажимаем по ней два раза:
Потом появится вот такое небольшое окошко свойств:
Как видите, в поле Описание тут сказано кратко, что поддерживает и улучшает производительность системы. Ну, в принципе, как я уже писал, то так оно и есть. Теперь, чтобы отключить эту службу, вам нужно там где Тип запуска, то там выбрать Отключена. И потом еще нажать кнопку Остановить, ну чтобы работа службы прекратилась. Ну а чтобы включить ее обратно, то нужно все вернуть как было
Это была первая настройка. А вот вторая настройка, это я имею ввиду кэширования дисков в Windows и вот как это кэширование отключить. Открываете окно Мой компьютер, в Windows 10 вы можете сразу его и не открыть, ну мало ли, поэтому на всякий случай я покажу команду, при помощи которой можно открыть это окно. Просто зажимаете Win + R и пишите туда такое как:
Теперь нажимаете правой кнопкой по любому диску или разделу и выбираете там Свойства:
Откроется окошко свойств, тут вам нужно перейти на вкладку Оборудование, где у вас будут все диски, вот эта вкладка:
А внизу там есть еще кнопочока Свойства. Так вот, вам нужно выбрать диск, и потом нажать эту кнопку, чтобы открыть уже свойства устройства, ну то есть диска. В общем выбираем диск и нажимаем кнопку Свойства:
Дальше нажимаем кнопку Изменить параметры:
И вот теперь, на вкладке Политика будут две галочки, вот они:
Как видите, они у меня поставлены, если вам нужно максимально отключить виндовское кэширование, то помимо отключения службы SuperFetch, снимите и тут галочки. Но учтите, что после этих отключений, ну я имею ввиду и SuperFetch и вот это кэширование записей, очистка буфера, то после всего этого у вас винда может начать работать немного медленнее. А если у вас SSD, то может быть и не будет разницы, но если не будет разницы, то в этом в кэшировании точно нет смысла! Но это вам нет, а вот вашему SSD (если у вас именно он), то польза может и будет, ибо с включенным кэшированием обращений к SSD-диску возможно что будет меньше. Вот такие вот дела ребята, так что учитывайте все моменты при отключении кэширования..
ЗАБЫЛ КОЕ ЧТО! Я вот показал как отключить кэширование дисков, да? Ну так вот, это нужно сделать для каждого диска! То есть там в окошке выбираете диск и потом нажимаете кнопку Свойства, и потом уже отключаете кэширование. ВОТ ТАК нужно сделать с каждым диском, для каждого диска нажать кнопку Свойства, ну, думаю все понятно
Что еще сказать про кэширование? Даже не знаю.. Ну то что отключать его я не советую, это я уже написал, однако решение все равно за вами, кому-то легче с ним, а у кого-то оно вызывает только глюки. Ведь для кэширования нужна оперативка, правда Microsoft утверждает, что при необходимости, оперативка будет освобождена под нужды какой-то проги. Но как уже убедились юзеры Windows 7, это не всегда происходит именно так, хотя у меня все было нормально. Часто юзеры писали, что какая-то программа сообщает, что ей не хватает оперативки, когда ее в теории должно быть полно. А оказывается, что вся она ушла под кэширование и возвращаться не собирается. Вот такие пироги..
Итак, давайте подведем выводы. Какие плюсы у отключения кэширования?
- Потребление оперативной памяти самой Windows должно снизится.
- Работающих служб станет на одну меньше, конечно это плюс сомнительный, но чем меньше работающих служб, тем быстрее работает сама Windows.
- Меньше шансов, что ценная информация пропадет. В теории данные должны записываться сразу на диск, без буферной зоны в виде кэша. Ну это не то чтобы в теории, это так и должно быть.
Как видим плюсы есть, но огромных все таки нет, разве что Windows будет потреблять меньше оперативки. Но и тут прикол, некоторые юзеры писали, что даже при отключении кэширования, винда все равно продолжала кушать оперативку под какой-то кэш. Правда дело было в Windows 7.
Ну а какие минусы отключения виндовского кэширования?
- Некоторые программы могут работать медленнее. Копирование файлов, установка и запуск программ, закрытие программ, все эти процессы могут происходить немного медленнее. Однако это я имею ввиду если у вас жесткий диск (HDD), если же твердотельный накопитель (SSD), то никакого замедления быть не должно.
- Увеличится обращение к диску. В случае с жестким диском это проявляется как периодическое подтормаживание, а в случае с SSD это просто увеличит количество записи/чтения данных (что не так уж и полезно для SSD).
- После отключения кэширования, свободная оперативная память будет простаивать, то есть пользы от нее никакой не будет. С другой стороны доступный обьем ОЗУ будет полностью в распоряжении запущенных программ.
Вот такие дела, я не знаю что написать по поводу особых плюсов или особых минусов в кэшировании. Тут каждый выбирает сам. То что система с включенным кэшированием работает быстрее, то в этом я сам лично убедился. Если отключить кэширование, то становится больше оперативы, я это тоже заметил. Поэтому вывод можно сделать один: я показал как отключить кэширование, вам осталось просто провести эксперимент и понять, что лучше, без кэширования или с ним. Рекомендую эксперимент вести не один день, а где-то неделю, или даже две, чтобы окончательно закрыть для себя вопрос, ну как-то так..
В общем на этом все, извините если что не так, но надеюсь что все вам тут было понятно. Удачи вам в жизни и всего хорошего
















