Служба SuperFetch: предназначение, настройка и отключение. Оптимизация по prefetch что это


Директивы prefetch и preload в webpack / Блог компании RUVDS.com / Хабр

В webpack 4.6.0. появилась поддержка директив prefetch и preload (они выглядят, соответственно, как «магические комментарии» webpackPrefetch и webpackPreload к командам import()). С их помощью браузеру можно давать подсказки о ресурсах, которые могут понадобиться пользователю в недалёком будущем. Браузер заблаговременно загружает такие ресурсы, что позволяет улучшить впечатление пользователя от работы с сайтом.

В материале, перевод которого мы сегодня публикуем, речь пойдёт о том, как пользоваться этими директивами для оптимизации производительности веб-сайтов.

Что такое <link rel=«prefetch»>?

Директива prefetch сообщает браузеру о том, что указанный ресурс, возможно, понадобится в будущем для перемещения по сайту.

Браузеры обычно загружают подобные ресурсы в то время, когда они не заняты другими задачами. После загрузки полученный ресурс оказывается в HTTP-кэше, готовый к использованию при обработке будущих запросов. Если нужно организовать предварительное получение множества ресурсов, такие запросы ставятся в очередь, их выполнение осуществляется, когда браузер находится в режиме простоя. Выходя из этого режима, браузер может прервать текущую загрузку prefetch-ресурса (и поместить частичный результат в кэш для того, чтобы позже вернуться к его загрузке с использованием заголовков Content-Range) и остановить очередь обработки prefetch-запросов.

В итоге можно сказать, что использование подсказки о ресурсах prefetch приводит к тому, что соответствующие ресурсы загружаются во время простоя браузера.

Что такое <link rel=«preload»>?

Директива preload сообщает браузеру о том, что ресурс, отмеченный ей, обязательно понадобится в данном сеансе работы с сайтом, но обращение к нему будет произведено немного позже. При этом Chrome даже выводит предупреждение, когда подобный ресурс не используется через 3 секунды после загрузки.

Обычно браузеры загружают такие ресурсы, давая им средний приоритет (такая загрузка не блокирует пользовательский интерфейс).

Ресурсы с подсказкой preload загружаются как обычные ресурсы, однако, их загрузка начинается немного раньше, чем пользователь к ним обращается.

О пользе директив prefetch и preload

Директива preload позволяет заблаговременно загружать ресурсы, которые скоро понадобятся, и избегать «эффекта водопада», когда, всё, что нужно для вывода страницы, начинает загружаться сразу же после щелчка по соответствующей ссылке. Эта технология позволяет разбить загрузку страницы на два этапа, когда сначала загружается HTML-код, а потом — всё остальное. При этом подобное не означает дополнительной нагрузки на сетевой канал.

Подсказка prefetch используется во время простоя браузера для ускорения будущих взаимодействий с сайтом. Её использование может означать необходимость в дополнительных расходах трафика в том случае, если пользователь не воспользуется загруженными ресурсами.

Разделение кода

Тут предполагается, что речь идёт об огромном приложении, подготовленном средствами webpack с применением механизма загрузки по запросу (команда import()) для загрузки только тех частей приложения, которые нужны пользователю в настоящий момент.

В качестве примера мы рассмотрим домашнюю страницу (HomePage), на которой есть кнопка для входа в систему (LoginButton), открывающая модальное окно для ввода учётных данных (LoginModal). После того, как пользователь войдёт в систему, ему показывают страницу панели управления (DashboardPage). На этой странице могут присутствовать другие кнопки, нужные для перехода к другим страницам, но мы ориентируемся на то, что целью пользователя является именно эта страница.

Для того чтобы достичь наилучшей производительности, на странице с кнопкой для входа в систему имеется команда import("LoginModal"), а на странице для ввода учётных данных — команда import("DashboardPage").

Теперь оказывается, что наше экспериментальное приложение разбито, как минимум, на три части: домашнюю страницу, страницу ввода учётных данных, и страницу панели управления. При первоначальной загрузке нужно показать пользователю лишь домашнюю страницу. Она загружается быстро, что даёт нам полное право ожидать того, что у пользователя будут хорошие впечатления от работы с этой страницей. Однако когда пользователь щёлкает по кнопке входа в систему, он заметит некоторую задержку, необходимую для вывода окна входа в систему, так как, прежде чем пользователь увидит это окно, данную часть приложения ещё надо загрузить. То же самое касается и страницы панели управления. На данном этапе у нас возникает вопрос о том, как улучшить впечатления пользователя от работы с сайтом.

Использование в webpack prefetch-подсказок

Благодаря тому, что теперь в webpack можно использовать prefetch-подсказки, мы можем улучшить вышеописанный сценарий работы с сайтом. Сделать это очень просто. А именно, нужно, на странице с кнопкой входа, использовать, вместо команды import("LoginModal"), команду import(/* webpackPrefetch: true */ "LoginModal"). Аналогично, на странице для ввода учётных данных, вместо команды import("DashboardPage") нужно использовать конструкцию import(/* webpackPrefetch: true */ "DashboardPage").

Эти команды сообщат webpack о том, что он должен загрузить, после загрузки основной страницы (во время простоя браузера), указанные фрагменты приложения. В данном примере, после загрузки домашней страницы, в очередь добавляется загрузка страницы входа в систему. А когда завершится загрузка страницы входа в систему (настоящая загрузка, а не предварительная, вызванная подсказкой webpackPrefetch), в очередь загрузок будет поставлен фрагмент приложения, представляющий страницу панели управления.

Исходя из того, что точкой входа в приложение является домашняя страница, на основе вышеописанных команд на HTML-странице будет сформирована ссылка вида <link rel="prefetch" href="login-chunk.js">. Фрагмент приложения, представляющий страницу для входа в систему, загружается по требованию, поэтому webpack позаботится о том, чтобы внедрить в страницу тег вида <link rel="prefetch" href="dashboard-chunk.js"> после завершения загрузки страницы входа в систему.

Это благотворно повлияет на впечатления пользователя от работы с сайтом. А именно, тут можно будет отметить следующие улучшения:

Обратите внимание на то, что выше мы описали идеальный вариант развития событий.

Пользователь не всегда будет видеть страницы, которые предполагается загружать в фоновом режиме, мгновенно. Существует масса факторов, которые могут на это повлиять. Среди них — медленные соединения с интернетом, пользователи, которые очень быстро щёлкают по соответствующим кнопкам, отключённая обработка prefetch-подсказок на устройствах, которые ориентированы на экономию трафика, отсутствие поддержки данной возможности в браузерах, очень медленная обработка загружаемых страниц сайта и так далее.

Использование в webpack preload-подсказок

Выше мы говорили о конструкции import(/* webpackPrefetch: true */ "...") для описания ресурсов, которые предполагается загружать во время простоя браузера. Существует аналогичная команда, import(/* webpackPreload: true */ "..."), для описания preload-ресурсов. Если сравнить два этих подхода, можно выявить множество различий: Как результат, prefetch-подсказки используются редко. Например, они могут понадобиться в том случае, если модуль немедленно импортирует что-либо командой import(). Это может иметь смысл, если, например, некий компонент зависит от большой библиотеки, которая должна присутствовать в отдельном фрагменте приложения. Например, компонент для вывода диаграмм, ChartComponent, использует большую библиотеку для работы с диаграммами — ChartingLibrary. Компонент, во время загрузки, показывает индикатор загрузки (LoadingIndicator) и немедленно выполняет команду import(/* webpackPreload: true */ "ChartingLibrary"). В результате, когда запрашивается загрузка страницы, которая использует ChartComponent, запрашивается, с помощью конструкции <link rel="preload">, и загрузка фрагмента приложения с библиотекой. Если исходить из предположения, что страница с компонентом меньше, чем фрагмент приложения с библиотекой, и её загрузка завершится быстрее, эта страница выведется с индикатором загрузки, который будет отображаться до окончания загрузки фрагмента приложения с библиотекой. Это немного уменьшит время загрузки всего необходимого, так как система выполняет загрузки параллельно, не разбивая этот процесс на два отдельных действия. Особенно это будет заметно там, где сетевые соединения характеризуются высокой задержкой.

Надо сказать, что неправильное применение конструкции webpackPreload может ухудшить производительность, поэтому пользоваться ей нужно осмотрительно.

Если вы размышляете о том, какой именно механизм вам нужен — preload или prefetch, вам, вероятно, лучше будет воспользоваться prefetch. При этом вышесказанное справедливо для команды import() webpack. На обычных HTML-страницах вам, вероятно, больше подойдёт preload.

Загрузка множества prefetch-ресурсов

При необходимости на странице можно использовать сколько угодно команд import() с директивой webpackPrefetch. Однако стоит учитывать то, что все загружаемые таким образом ресурсы будут бороться за полосу пропускания.

Соответствующие запросы ставятся в очередь, что может привести к ситуации, когда фрагмент, необходимый для обслуживания запроса пользователя, окажется, к нужному моменту, не загруженным.

Нельзя назвать это большой проблемой в том случае, если все prefetch-ресурсы могут понадобиться с одинаковой вероятностью. Однако, если некоторые ресурсы важнее других, то, скорее всего, стоит задуматься о возможности контроля порядка загрузки ресурсов.

К счастью, это возможно, хотя это и выходит за пределы базовых вариантов использования prefetch и preload.

Так, вместо применения конструкции webpackPrefetch: true, можно, вместо логического значения, использовать число. В результате webpack будет загружать фрагменты в заданном порядке. Например, ресурс с webpackPrefetch: 42 будет загружен перед ресурсом с webpackPrefetch: 1, который, в свою очередь, будет загружен ранее ресурса с webpackPrefetch: true, а этот ресурс будет загружен до ресурса с webpackPrefetch: -99999 (это напоминает z-order). На самом деле true здесь — это то же самое, что и 0.

Похожим образом можно работать и с webpackPreload, но вам это вряд ли понадобится.

Часто задаваемые вопросы

Директива preload имеет приоритет перед prefetch, а prefetch используется в том случае, если больше никаких указаний по поводу конкретного ресурса у webpack нет. Если используются несколько команд на предварительную загрузку одного и того же ресурса, срабатывает та из них, которой назначен более высокий приоритет. В подобной ситуации браузер игнорирует эти подсказки, а webpack не сделает попытку воспользоваться каким-нибудь резервным механизмом. На самом же деле, prefetch и preload не случайно называют «подсказками», поэтому если даже браузер их поддерживает, он может, по какой-то причине, их проигнорировать. Среда выполнения webpack воспринимает подсказки prefetch и preload только для ресурсов, загружаемых по требованию. Когда prefetch или preload используются в командах import() во фрагментах сайта, являющихся входными точками, система генерирования HTML ответственна за добавление тегов <link> в получаемый код.

Соответствующие справочные данные доступны в entrypoints[].childAssets.

Это приведёт к нерациональному использованию полосы пропускания интернет-канала. Кроме того, больше пользы можно извлечь из выборочного применения этих директив для команд import(), относящихся к ресурсам, которые понадобятся пользователю с высокой долей вероятности. Не стоит зря нагружать интернет-каналы, ведь у некоторых пользователей они далеко не безлимитные. Поэтому используйте данные директивы только тогда, когда они действительно нужны. Соответствующий код в среде выполнения webpack добавляется только в том случае, если директивы prefetch и preload используются для работы с материалами, загружаемыми по требованию. В результате, если вы этой возможностью не пользуетесь, никакой дополнительной нагрузки на систему не создаётся. Да, это возможно. Комментарии надо либо разделить запятой, либо просто использовать несколько отдельных комментариев:import(  /* webpackChunkName: "test", webpackPrefetch: true */  "LoginModal" ) // или import(  /* webpackChunkName: "test" */  /* webpackPrefetch: true */  "LoginModal" ) // переводы строк необязательны Да, можно добавить «магические комментарии» webpack в команды import() и rollup их сохранит. Если готовый проект собирают с помощью webpack, он воспользуется этими комментариями. Если webpack применяться не будет, они просто будут удалены минификатором. Лучше всего — измерить производительность, воспользовавшись методикой A/B-тестирования. В применении к подобной ситуации нельзя дать однозначного универсального совета. Это зависит от вероятности того, что пользователю понадобится посетить некую часть приложения. Это зависит от приложения. В целом, подобные сервис-воркеры загружают все ресурсы приложения не заботясь о порядке, в котором производится загрузка. В то же время, директивы prefetch позволяют указывать порядок загрузки ресурсов, они зависят от места в приложении, в котором находится пользователь. Кроме того, механизм prefetch экономнее относится к полосе пропускания и загружает данные только во время простоя браузера.

Измерьте время, необходимое для полной загрузки приложения с использованием низкоскоростного канала связи, сопоставьте это с тем, когда пользователю понадобится выполнить первый переход в приложении. Если приложение очень велико, в нём имеет смысл рассмотреть использование механизма prefetch, а не кэширование всего приложения за один заход.

Да, жизненно важные ресурсы можно поместить в точку входа в приложение, а второстепенные — загрузить с помощью import() с webpackPreload: true. И не забудьте добавить <link rel="preload"> для ресурсов, необходимых для правильной работы точки входа в приложение (перед тегами для дочерних элементов).

Итоги

В этом материале мы рассказали о новшестве webpack, позволяющем использовать директивы prefetch и preload. Их правильное применение помогает улучшить впечатления пользователя от работы с сайтом, а неправильное может привести к ненужным затратам трафика, что особенно актуально для случаев, когда работа с веб-ресурсом ведётся на устройстве, возможности которого ограничены. Надеемся, новые возможности webpack пригодятся вам в деле создания быстрых и удобных веб-проектов.

Уважаемые читатели! Видите ли вы практические ситуации, в которых вам могут пригодиться директивы prefetch и preload?

habr.com

Удаление ненужных файлов. Очистка папки Prefetch

Пятница, 28, января, 2011

Удаление ненужных файлов

Знаете, я никогда не понимал назначение папки Temp в Windows. Я имею в виду, что не знаю, зачем она нужна и что делает. Например, если при установке программы произошел сбой, то в эту папку копируются некие файлы, которые впоследствии не нужны, их можно просто удалить, не причинив никакого вреда системе. Если произошел сбой в работе, то обязательно проверьте папку Temp, вы, наверняка, найдете в ней массу файлов, занимающих драгоценное место на вашем диске.

Папки Temp расположены в двух местах: C:\Windows\Temp и C:\Documents and Settings\Имя_пользователя\LocalSettings\Temp. По умолчанию папка Local Settings является скрытой, поэтому, чтобы увидеть эту папку, вам придется включить соответствующую опцию. Теперь перейдите в эти папки и удалите все содержимое.

Если вы прежде не открывали эти папки, то, вероятно, будете шокированы тем, что в них творится.

Что такое папка Prefetch

Папка Prefetch находится в системной папке Windows в ней содержится информация о часто открываемых программах для быстрого доступа к ним. Используется для ускорения загрузки операционной системы и запуска программ.При запуске компьютера Windows отслеживает процесс загрузки. После чего полученная информация сохраняется на жесткий диск в папке Prefetch. При следующем запуске эта информация применяется для ускорения загрузки операционной системы. Тоже самое происходит и при запуске любой программы.

Очистка папки Prefetch

Разработчики из Microsoft решили, что папки Temp занимают слишком маленький объем вашего дискового пространства, так почему бы не создать еще одну папку, выполняющую аналогичные действия? Большое спасибо! Нет, правда, спасибо.

Вероятно, у нас очень мало папок, которые просто съедают свободное дисковое пространство. Теперь, кроме папки Temp, у нас есть замечательная папка Prefetch. Функции этой папки отличаются от функций, выполняемых папкой Temp, однако, как и в папке Temp, в ней может веками храниться мусор, если вы не удалите его вручную. Поэтому советую периодически очищать эту папку (C:\Windows\Prefetch). И не волнуйтесь, система от этого не пострадает. Любые удаленные файлы, которые необходимы Windows, будут автоматически воссозданы.

evgb4.ru

Служба prefetch что это - Всё о компьютерах

Для чего используется SuperFetch и как отключить службу?

SuperFetch – это некая служба, которая представляет собой приложение для пред загрузки различного рода программ. Другими словами, анализируя вашу систему на предмет активно использующихся утилит, после запуска она добавляет их в память компьютера. Делается это с целью максимально ускорить загрузку приложений для последующей работы с ними.

Вся работа SuperFetch происходит вне видимости пользователя. Запоминая программы, которые пользователь использует в постоянстве она предварительно, ещё до непосредственного запуска приложения, выгружает его данные в оперативную память, если это позволяют её объёмы. Таким образом, когда вы будете запускать программу, вычисления будут начинаться не с самого начала, а с платформы, созданной службой.

Исходя из этого можно сделать вывод, что видимость загруженных задач и их реальное количество может отличаться. Возможно вы замечали, что приложение, которое вы используете на постоянной основе, запускается намного быстрее, чем другие с аналогичной грузоёмкостью. Это следствие является производной работы SuperFetch.

Релиз SuperFetch состоялся в Windows Vista, после чего служба была включена в дальнейшие версии. По мере развития технологий данное решение становится всё менее и менее актуальным, поэтому вы можете даже отключить его.

Иногда, когда эта функция отключена или, даже включена, возникают ошибки системы, но это скорее индивидуальная особенность некоторых твиков. Соответственно, вам следует в таком случае изменить состояние службы.

В свою очередь данный подход приносит пользу, но так же занимает дополнительную оперативную память, на, возможно, бесполезные в текущий момент программы. Таким образом вы можете сами решать стоит ли SuperFetch затраченных ресурсов или нет. В общем-то рекомендуется останавливать службу в случае с маломощными компьютерами, ресурсы которых не позволяют поддерживать работу дополнительных, хоть и полезных, процессов.

Если вы используете SSD диск, вы так же можете отключить данную функцию, так как особой пользы она не принесёт. Так же вы можете отключить ещё PreFetch службу, они идут в комплекте и выполняют подобные задачи. На текущий момент в современных компьютерах SuperFetch утратила свою актуальность из-за большой мощности, так как нет необходимости дополнительно загружать информацию предварительно, запуск происходит итак довольно быстро.

Ошибка при запуске приложения 0xc000007b

Вы здесь: Главная → Контент → Статьи → Папка Prefetch в Windows. Настройка службы Prefetcher

Папка Prefetch в Windows. Настройка службы Prefetcher

Папку Prefetch можно обнаружить в Windows XP, Vista, 7, 8 по следующему пути: C:WindowsPrefetch — она является компонентом операционной системы и ускоряет процесс начальной загрузки ОС и часто используемых программ. Впервые данная технология была применена в Windows XP, а начиная с Vista была дополнена технологиями SuperFetch и ReadyBoost. Запуск ОС или приложения сопровождается чтением данных из памяти, часто к одному и тому же файлу приходится обращаться несколько раз, что весьма нерационально и занимает много времени. Windows оптимизирует загрузку кода, сохраняя в папке Prefetch файлы трассировки, которые обрабатывает по-своему.

Для настройки папки Prefetcher нам понадобится редактор реестра. Сразу хотелось бы продублировать предупреждение с сайта Microsoft: «Неправильное использование редактора реестра может привести к серьезным неполадкам, требующим переустановки операционной системы. Редактор реестра вы используете на свой страх и риск «.

Нажимаем Пуск — Выполнить и вводим regedit. В редакторе реестра найдем следующий раздел: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters

Нас интересует параметр EnablePrefetcher. Он может принимать следующие значения:0x00000000 — компонент отключен0x00000001 — ускорение запуска приложений0x00000002 — ускорение загрузки системы0x00000003 — ускорение запуска приложений и загрузки системы

Таким образом, чтобы отключить Prefetch нужно два раза щелкнуть по параметру EnablePrefetcher и в диалогом окне указать значение 0. По умолчанию используется 3 — для более быстрого запуска приложений и загрузки Windows. Необходимость отключения Prefetcher часто возникает при работе с Windows 8 — многие новые ноутбуки комплектуются не традиционным HDD жестким диском, а сверхбыстрым SSD-накопителем, которые пока характеризуются высокой стоимостью и небольшим объемом памяти.

При установленном SSD накопителе Windows 8 самостоятельно должна отключать службу Prefetcher, однако если этого не произошло, вы можете удалить Prefetch самостоятельно. В указанном выше разделе реестра для параметров EnablePrefetcher и EnableSuperfetch нужно задать значение 0. то есть отключить их. Перезагрузите компьютер.

Системные файлы и папки Windows имеют множество мифов, не стала исключением и рассматриваемая нами служба. Часто приходится слышать вопросы: можно ли удалить папку Prefetch, как отключить или включить Prefetch. Но самое интересное заблуждение состоит в том, что добавление ключа /prefetch:1 в ссылку на объект во вкладке «ярлык» ускоряет загрузку приложения, поскольку ОС, видя данный ключ, добавляет программу в папку Prefetch. Добавление /prefetch:1 к адресу ни к чему не приведет. а миф основывается на том, что аналогичный ключ присутствует в строке запуска Windows Media Player.

Часто спрашивают, можно и нужно ли удалять файлы из папки Prefetch? Якобы, это позволяет освободить место на жестком диске. Ответ однозначный: НЕТ. Во-первых, при удалении данных файлов время загрузки ОС и некоторых программ увеличится, а файлы трассировки будут созданы заново. Во-вторых, Prefetcher сам управляет данными файлами без необходимости стороннего вмешательства. К тому же, Microsoft ограничила количество трассировочных файлов 128 штуками, чтобы они как раз не занимали слишком много места на диске.

Назад Предыдущий материал

SuperFetch: что это за служба и стоит ли ее отключать

Со времени выхода одной из самых популярных сегодня операционных систем Windows 7 в ней была реализована уникальная технология под названием SuperFetch. Что это за служба, знают далеко не все. Однако если вспомнить технологию Prefetcher в Windows Vista, все встанет на свои места. Попробуем разобраться, что же это такое.

SuperFetch: что это за служба?

Прежде чем разбираться с самой службой, начнем с азов. Если кто не знает, при запуске любой программы ее исполняемые или конфигурационные файлы и компоненты сначала считываются с жесткого диска, а затем загружаются в оперативную память. После завершения приложения при повторном открытии программы выполняется тот же процесс.

Для ускорения доступа к программам и непосредственно оптимизации работы системных процессов и была разработана технология SuperFetch. Что это за служба? Если говорить просто, это некая интеллектуальная система, отслеживающая наиболее частое использование юзером определенных программ, которая позволяет кэшировать файлы приложений (помещать их в оперативную память) для ускорения доступа к ним. То есть запуск программы производится намного быстрее, ведь данные уже находятся в «оперативке», а не считываются с винчестера, что, естественно, занимает больше времени.

В дереве процессов более поздних систем, нежели Vista, в стандартном «Диспетчере задач» она представлена в виде процесса SysMain (SuperFetch – в описании службы).

В чем разница между Prefetch и SuperFetch?

Изначальная технология впервые очень робко была применена в Windows XP, но серьезно продолжена в версии Vista, только тогда она называлась Prefetcher (предварительная выборка). Она отвечала за оптимизацию загрузки системных компонентов и модулей запускаемых приложений перед непосредственным стартом.

Начиная с «семерки», служба была несколько переработана, получила название SuperFetch (супервыборка) и стала работать несколько по-другому (хотя модуль Prefetcher тоже есть). Предварительная выборка имеет ряд недостатков. Дело в том, что количество загружаемых в оперативную память программ ограничено, а когда какое-то приложение перестает активно использоваться, его данные снова выгружаются на винчестер, причем в файл подкачки.

В ОС Windows SuperFetch отслеживает пользовательскую активность и, кроме создания специальных карт, еще сохраняет конфигурацию часто используемых программ. Если по каким-либо причинам одно приложение было выгружено из памяти, служба проводит анализ выгрузки, а после завершения процесса, который вызвал выгрузку, снова инициирует загрузку модулей предыдущей программы в «оперативку».

В целом же служба повышает скорость старта приложений и даже обеспечивает более стабильное увеличение производительности системы. Правда, тут стоит обратить внимание, что иногда могут возникать проблемы с загрузкой «оперативки», если ее объем не превышает 1 Гб, но об этом чуть позже.

Управление параметрами службы SuperFetch

Итак, теперь посмотрим, как производится управление параметрами SuperFetch. Что это за служба, думается, уже немного понятно. Перейдем непосредственно к настройке.

Как считают многие специалисты, лучше всего для этих целей использовать системный реестр или групповые политики. Впрочем, второй вариант, по сути, дублирует первый, так что остановимся на реестре. Вызывается редактор командой regedit в меню «Выполнить» (Win + R).

Здесь, используя ветку HKLM, в системном разделе нужно найти директорию PrefetchParameters (эти параметры можно найти и с использованием поискового запроса). Здесь нас интересуют два ключа: EnablePrefetcher и EnableSuperFetch. Если второго ключа нет, его нужно создать (параметр DWORD) и присвоить ему соответствующее имя. Для каждого ключа можно ввести четыре значения:

В качестве рекомендуемого параметра установлена автоматическая оптимизация и системы, и программ («3»).

Еще одним методом управления параметрами службы (а заодно и ее процессом SysMain SuperFetch) является использование команды services.msc, которая открывает окно настроек исполняемых служб и процессов. Здесь нужно найти SuperFetch и открыть свойства службы двойным кликом, после чего установить необходимый параметр из выпадающего списка типа запуска.

SuperFetch: отключить или нет?

Вопрос использования самого сервиса для многих является достаточно спорным. В принципе, при малом объеме оперативной памяти службу лучше не задействовать. Так, например, если объем «оперативки» не превышает 1 Гб, загрузка памяти может достигать 600 Мб, не говоря уже о виртуальной памяти и файле подкачки. Однако практически все современные компьютерные системы даже с минимальной конфигурацией изначально оснащаются достаточно большими объемами «оперативки» порядка 3-4 Гб и выше. Так что отключать службу не рекомендуется. Даже при наличии 2 Гб SuperFetch можно использовать, в общем-то, без проблем.

Ошибка запуска службы SuperFetch

Но иногда возникают и проблемы, связанные со службой SuperFetch (отключить или нет, это уже дело каждого). Сами сбои на системном уровне особо не проявляются и критического влияния на работу «операционки» не оказывают.

Однако в модуле SuperFetch ошибка состоит в том, что эта служба попросту не активируется, даже при условии ввода нужных параметров в том же реестре. Как правило, выдается сообщение об аварийном завершении (SuperFetch terminated) или о запрете доступа. Дело тут только в том, что не хватает оперативной памяти или же наблюдается конфликт между планками «оперативки».

Естественно, оптимальным вариантом станет полное отключение службы, но если памяти хватает, лучше изначально провести ее тест, устранить возможные проблемы, а только после этого принимать решение об отключении или дальнейшем использовании.

Заключение

Исходя из общего описания SuperFetch, что это за служба, уже, наверное, понятно. Но вот вопрос отключения или использования этого процесса должен решаться самим юзером. Общие рекомендации таковы, что при малом объеме оперативной памяти ее лучше отключить, а при нормальном количестве – наоборот, оставить активированной. По крайней мере, вреда это не принесет уж точно.

10 очаровательных звездных детей, которые сегодня выглядят совсем иначе Время летит, и однажды маленькие знаменитости становятся взрослыми личностями, которых уже не узнать. Миловидные мальчишки и девчонки превращаются в с.

Топ-10 разорившихся звезд Оказывается, иногда даже самая громкая слава заканчивается провалом, как в случае с этими знаменитостями.

Что форма носа может сказать о вашей личности? Многие эксперты считают, что, посмотрев на нос, можно многое сказать о личности человека. Поэтому при первой встрече обратите внимание на нос незнаком.

Каково быть девственницей в 30 лет? Каково, интересно, женщинам, которые не занимались сексом практически до достижения среднего возраста.

11 странных признаков, указывающих, что вы хороши в постели Вам тоже хочется верить в то, что вы доставляете своему романтическому партнеру удовольствие в постели? По крайней мере, вы не хотите краснеть и извин.

Наши предки спали не так, как мы. Что мы делаем неправильно? В это трудно поверить, но ученые и многие историки склоняются к мнению, что современный человек спит совсем не так, как его древние предки. Изначально.

Источники: http://tvoykomputer.ru/dlya-chego-ispolzuetsya-superfetch-i-kak-otklyuchit-sluzhbu/, http://2notebook.net/content/articles/papka-prefetch-v-windows, http://fb.ru/article/241788/superfetch-chto-eto-za-slujba-i-stoit-li-ee-otklyuchat

it-radar.ru

Отключить prefetch и superfetch в windows 10

SuperFetch: что это за служба и стоит ли ее отключать

Со времени выхода одной из самых популярных сегодня операционных систем Windows 7 в ней была реализована уникальная технология под названием SuperFetch. Что это за служба, знают далеко не все. Однако если вспомнить технологию Prefetcher в Windows Vista, все встанет на свои места. Попробуем разобраться, что же это такое.

SuperFetch: что это за служба?

Прежде чем разбираться с самой службой, начнем с азов. Если кто не знает, при запуске любой программы ее исполняемые или конфигурационные файлы и компоненты сначала считываются с жесткого диска, а затем загружаются в оперативную память. После завершения приложения при повторном открытии программы выполняется тот же процесс.

Для ускорения доступа к программам и непосредственно оптимизации работы системных процессов и была разработана технология SuperFetch. Что это за служба? Если говорить просто, это некая интеллектуальная система, отслеживающая наиболее частое использование юзером определенных программ, которая позволяет кэшировать файлы приложений (помещать их в оперативную память) для ускорения доступа к ним. То есть запуск программы производится намного быстрее, ведь данные уже находятся в «оперативке», а не считываются с винчестера, что, естественно, занимает больше времени.

В дереве процессов более поздних систем, нежели Vista, в стандартном «Диспетчере задач» она представлена в виде процесса SysMain (SuperFetch – в описании службы).

В чем разница между Prefetch и SuperFetch?

Изначальная технология впервые очень робко была применена в Windows XP, но серьезно продолжена в версии Vista, только тогда она называлась Prefetcher (предварительная выборка). Она отвечала за оптимизацию загрузки системных компонентов и модулей запускаемых приложений перед непосредственным стартом.

Начиная с «семерки», служба была несколько переработана, получила название SuperFetch (супервыборка) и стала работать несколько по-другому (хотя модуль Prefetcher тоже есть). Предварительная выборка имеет ряд недостатков. Дело в том, что количество загружаемых в оперативную память программ ограничено, а когда какое-то приложение перестает активно использоваться, его данные снова выгружаются на винчестер, причем в файл подкачки.

В ОС Windows SuperFetch отслеживает пользовательскую активность и, кроме создания специальных карт, еще сохраняет конфигурацию часто используемых программ. Если по каким-либо причинам одно приложение было выгружено из памяти, служба проводит анализ выгрузки, а после завершения процесса, который вызвал выгрузку, снова инициирует загрузку модулей предыдущей программы в «оперативку».

В целом же служба повышает скорость старта приложений и даже обеспечивает более стабильное увеличение производительности системы. Правда, тут стоит обратить внимание, что иногда могут возникать проблемы с загрузкой «оперативки», если ее объем не превышает 1 Гб, но об этом чуть позже.

Управление параметрами службы SuperFetch

Итак, теперь посмотрим, как производится управление параметрами SuperFetch. Что это за служба, думается, уже немного понятно. Перейдем непосредственно к настройке.

Как считают многие специалисты, лучше всего для этих целей использовать системный реестр или групповые политики. Впрочем, второй вариант, по сути, дублирует первый, так что остановимся на реестре. Вызывается редактор командой regedit в меню «Выполнить» (Win + R).

Здесь, используя ветку HKLM, в системном разделе нужно найти директорию PrefetchParameters (эти параметры можно найти и с использованием поискового запроса). Здесь нас интересуют два ключа: EnablePrefetcher и EnableSuperFetch. Если второго ключа нет, его нужно создать (параметр DWORD) и присвоить ему соответствующее имя. Для каждого ключа можно ввести четыре значения:

В качестве рекомендуемого параметра установлена автоматическая оптимизация и системы, и программ («3»).

Еще одним методом управления параметрами службы (а заодно и ее процессом SysMain SuperFetch) является использование команды services.msc, которая открывает окно настроек исполняемых служб и процессов. Здесь нужно найти SuperFetch и открыть свойства службы двойным кликом, после чего установить необходимый параметр из выпадающего списка типа запуска.

SuperFetch: отключить или нет?

Вопрос использования самого сервиса для многих является достаточно спорным. В принципе, при малом объеме оперативной памяти службу лучше не задействовать. Так, например, если объем «оперативки» не превышает 1 Гб, загрузка памяти может достигать 600 Мб, не говоря уже о виртуальной памяти и файле подкачки. Однако практически все современные компьютерные системы даже с минимальной конфигурацией изначально оснащаются достаточно большими объемами «оперативки» порядка 3-4 Гб и выше. Так что отключать службу не рекомендуется. Даже при наличии 2 Гб SuperFetch можно использовать, в общем-то, без проблем.

Ошибка запуска службы SuperFetch

Но иногда возникают и проблемы, связанные со службой SuperFetch (отключить или нет, это уже дело каждого). Сами сбои на системном уровне особо не проявляются и критического влияния на работу «операционки» не оказывают.

Однако в модуле SuperFetch ошибка состоит в том, что эта служба попросту не активируется, даже при условии ввода нужных параметров в том же реестре. Как правило, выдается сообщение об аварийном завершении (SuperFetch terminated) или о запрете доступа. Дело тут только в том, что не хватает оперативной памяти или же наблюдается конфликт между планками «оперативки».

Естественно, оптимальным вариантом станет полное отключение службы, но если памяти хватает, лучше изначально провести ее тест, устранить возможные проблемы, а только после этого принимать решение об отключении или дальнейшем использовании.

Заключение

Исходя из общего описания SuperFetch, что это за служба, уже, наверное, понятно. Но вот вопрос отключения или использования этого процесса должен решаться самим юзером. Общие рекомендации таковы, что при малом объеме оперативной памяти ее лучше отключить, а при нормальном количестве – наоборот, оставить активированной. По крайней мере, вреда это не принесет уж точно.

Зачем нужен крошечный карман на джинсах? Все знают, что есть крошечный карман на джинсах, но мало кто задумывался, зачем он может быть нужен. Интересно, что первоначально он был местом для хр.

Неожиданно: мужья хотят, чтобы их жены делали чаще эти 17 вещей Если вы хотите, чтобы ваши отношения стали счастливее, вам стоит почаще делать вещи из этого простого списка.

9 знаменитых женщин, которые влюблялись в женщин Проявление интереса не к противоположному полу не является чем-то необычным. Вы вряд ли сможете удивить или потрясти кого-то, если признаетесь в том.

7 частей тела, которые не следует трогать руками Думайте о своем теле, как о храме: вы можете его использовать, но есть некоторые священные места, которые нельзя трогать руками. Исследования показыва.

Как выглядеть моложе: лучшие стрижки для тех, кому за 30, 40, 50, 60 Девушки в 20 лет не волнуются о форме и длине прически. Кажется, молодость создана для экспериментов над внешностью и дерзких локонов. Однако уже посл.

11 странных признаков, указывающих, что вы хороши в постели Вам тоже хочется верить в то, что вы доставляете своему романтическому партнеру удовольствие в постели? По крайней мере, вы не хотите краснеть и извин.

Как отключить SuperFetch в Windows 10

Впервые SuperFetch появилась в ОС Vista, а потом она присутствовала в системах Windows и Windows 8. Технология позволяла ускорять работу программ, используя в оперативной памяти их кэш. Она же необходима для работы ReadyBoost.

На современных ПК SuperFetch – это уже лишнее. А для твёрдотельных вариантов дисков её советуют вообще отключить. Кроме того, при применении некоторых возможностей системы эта функция во включённом состоянии способна вызывать ошибки.

Таким образом, ситуаций, когда службу надо отключить, хватает. Это можно сделать двумя способами. И перед тем как начать рассматривать их, хотим сказать, что включить довольно просто: нужно выполнять всё то же самое, только в обратной последовательности.

Отключение службы SuperFetch

Быстрее и проще всего отключить через Панель управления. Оттуда вам нужно попасть в раздел «Администрирование», а потом уже в «Службы». А ещё предлагается использовать сочетание клавиш Windows+R и ввести потом services.msc .

Итак, перед вами будет список служб. Там можно найти SuperFetch, после чего будет достаточно 2 раза кликнуть. У вас открывается диалоговое окно, потом вы выбираете «Остановить». Обратите внимание на пункт «Тип запуска», там есть вариант «Отключена», на который и нужно кликнуть. Дальше нажмите «Применить», это поменяет настройки. Теперь можно перезагрузить компьютер и посмотреть, ничего ли не сбилось, но вообще это как раз необязательно, обычно и так всё отлично работает.

Отключение SuperFetch и Prefetch с помощью редактора реестра

Отключить службу можно и через редактор реестра Windows 10. Итак, для начала вам нужно сочетание клавиш Win+R, после чего следует ввести regedit. Если лень набирать, никто не мешает скопировать, только не забудьте убрать точку. Потом жмите Enter. У вас появился реестр, но он потребуется, разумеется, не весь, а только конкретный раздел, который называется так: HKEY_LOCAL_MACHINE SYSTEM CurrentControlSet Control Session Manager Memory Management PrefetchParameters – вот этот вот длинный адрес. Что делать дальше?

Следующим этапом нужно поискать параметр EnableSuperfetcher. Если его нет, то можно создать через DWORD, используя это имя. Потом вам необходимо выставить значение, равное 0. Это отключит SuperFetch. А если вы хотите отключить Prefetch, то вам понадобится значение EnablePrefetcher поменять на 0. И под конец перезагрузить ПК. Готово!

А если вам потребовалось включить функцию, то значение параметра нужно будет заменить на 3.

1 означает, что технология включена, но выборочно, то есть исключительно для файлов загрузки. А 2 – только для программ. Вообще эти параметры позволяют лучше настраивать систему под себя при желании. Как видите, всё просто.

SuperFetch как отключить в Windows 10?

Всем привет, в этой заметке я вам, дорогие друзья, покажу как отключить Prefetch (префетч) и Superfetch (суперфетч) в Windows 10. В старых версиях Windows, даже в XP эти приблуды также отключали, так как польза от них была сомнительная (хотя можно поспорить). Как бы там не было на самом деле, а если вам нужно это отключить, то попробуйте — вдруг это действительно сделает комп немного быстрее.

За кэширование в винде отвечает служба SysMain. но вы не думайте что это какая-то левая, нет, просто в списке служб вы видите название SuperFetch, а второе имя ее это SysMain! Вот такие пироги!

Грузить вас не хочу и не буду, но все таки пару слов о том, что такое SuperFetch напишу (Prefetch было в XP, можно так сказать, это предыдущая версия технологии). Значит так, это такая технология, которая позволяет вроде бы как сделать Windows еще быстрее, то есть те программы или файлы, с которыми вы чаще всего работаете, они загружаются в оперативку и именно для того, что бы если что, к ним был быстрый доступ.

То есть с одной стороны, то вообще полезно, но зачем тогда отключать? Честно, врать не стану, я не знаю насколько стабильно работает система, когда эта технология по максимум начинает отгребать себе память, кстати другими словами этот SuperFetch (появился еще в Vista) является кэшем Windows 10. Так вот, насколько стабильно будет работать Windows, если например кэш ее будет около пару гб? Лично я не могу ответить точно. но в интернете, можно встретить отзывы что система виснет и тормозит, ну и в этом духе, и именно поэтому пользователи и интересуются как отключить кэш в Windows 10.

Ну надеюсь что вы поняли то, что я хотел до вас донести Настоятельно рекомендую отключать эту технологию, если у вас SSD-накопитель, ибо он и так по себе быстрый. Кстати, я не могу сказать что этот кэш очень эффективен — ведь он кэширует файлы, а не блоки, понимаете? А вот например утилита PrimoCache, кэширует именно блоки! Если интересно, то о ней я писал тут, в статье как ускорить жесткий диск .

Итак, приступим (в принципе данный способ подходит и для других Windows) — открываем Диспетчер задач (на панели задач правой кнопкой мышки и там выберите в меню), и там переходим на вкладку Службы. Тут вам нужно найти пункт SysMain (это и есть служба кэширования), и по нему нажать правой кнопкой и выбрать Остановить:

После этих действий, служба SuperFetch остановится и прекратит свою работу. Но это так, чтобы по быстрому отключить, если же вы хотите навсегда избавится от SuperFetch, то нужно открыть службы, просто зажмите на клаве Win + R и введите туда вот такое: services.msc:

После этого откроется окно со службами. Там сразу рекомендую переключится на стандартный вид, потом найти необходимую службу:

Нажимаем по ней два раза мышкой, появится окно настроек — нужно указать, чтобы эта служба вообще никогда не запускалась, сделать это можно тут:

Все! Теперь кэширование отключено, но, десятка все равно что-то будет кэшировать, почему и что — я не знаю (может быть какие-то особо важные системные компоненты?), но надеюсь что это не будет создавать тормоза. А вообще, вы наверно сами знаете, что сколько бы не было оперативки (если суперфетч включен), Windows под этот кэш может десятки гб брать… (врать не буду, у меня такого не было, но было у других!).

Источники: http://fb.ru/article/241788/superfetch-chto-eto-za-slujba-i-stoit-li-ee-otklyuchat, http://windows-10.net/tuning-windows10/19-disable-superfetch-prefetch-windows10.html, http://virtmachine.ru/superfetch-kak-otklyuchit-v-windows-10.html

it-radar.ru

Служба SuperFetch: предназначение, настройка и отключение

Новая эпоха стационарных операционных систем начинается с появления на свет Windows 7, поскольку она была полностью переработана и вобрала в себя множество инновационных технологий. Одной из таковых является SuperFetch, однако, лишь небольшая категория продвинутых юзеров имеет хоть малейшее представление о том, что она собой представляет и для каких целей она предназначена.

SuperFetch: общая информация и основное предназначение

Прежде чем углубиться в дебри устройства ОС Windows необходимо сначала разобраться с азами и основными понятиями, а также иметь представление о том, как вообще устроена самая популярная операционная система. Загрузка Windows начинается с того, что система считывает системные и конфигурационные файлы с винчестера, после чего происходит их загрузка в RAM-память. Этот процесс происходит каждый раз при повторном открытии любой программы, с которой работает пользователь. Процесс считывания занимает определенное время, поэтому для ускорения работы семерки программисты из компании Microsoft разработали инновационную технологию, которая получила название SuperFetch.

Если подальше уйти от терминологии и постараться дать определение этой технологии на простом языке, то она представляет собой интеллектуальную систему, которая осуществляет мониторинг и кеширование программ, с которыми чаще всего работает юзер, с целью ускорения процесса их запуска. Таким образом, операционной системе необходимо значительно меньше времени для их загрузки, поскольку скорость работы оперативной памяти во много раз выше, чем жесткого диска.

Prefetch VS SuperFetch: основные различия

Впервые, технология SuperFetch была реализована еще в XP, а затем существенно доработана в Vista, однако, в этих версиях Windows она называлась Prefetcher. Тем не менее несмотря на различные названия принцип работы был абсолютно идентичен и основывался на выборке наиболее часто используемых программ, с целью ускорения работы операционной системы.

В семерке эта технология была оптимизирована и доработана, а также получила новое название. Помимо этого, был значительно переработан алгоритм работы. Все дело в том, что в ранних версиях SuperFetch все приложения загружались в ОЗУ, что в определенной степени ограничивало возможности оптимизации загрузки, поскольку объем оперативки ограничен. Поэтому разработчики решили усовершенствовать технологию и реализовали в ней возможность создания специальных конфигурационных файлов, которые содержат информацию о часто используемых приложениях. Таким образом, если какая-либо программа была закрыта, то SuperFetch добавляет в файл конфигурации информацию о ней и при последующем ее запуске берет данные не с жесткого диска, а с конфигурационного файла.

Таким образом, эта технология способствует не только более быстрому запуску программ, но и ускоряет загрузку самой операционной системы. Однако стоит отметить, что для стабильной работы SuperFetch необходимы достаточные ресурсы ОЗУ, объем которой не должен быть менее одного гигабайта.

Настройка службы

С основными понятиями и принципом работы SuperFetch мы разобрались, поэтому теперь необходимо поговорить о том, как ее настроить. Сделать это можно двумя способами: при помощи системного реестра и путем изменения групповой политики, однако, оба метода практически идентичны, поэтому настройку службы мы рассмотрим на примере изменения параметров системного реестра.

Первым делом необходимо открыть редактор команд Windows, после чего в открывшемся окне находим ветку PrefetchParameters, в которой будет необходимо работать с ключами EnablePrefetcher и EnableSuperFetch. Если второй ключ отсутствует, то будет необходимо создать его самостоятельно, задав при этом соответствующее имя. Для настройки необходимо задать каждому ключу один из параметров:

0 — деактивация службы;1 — кеширование наиболее часто используемых приложений;2 — оптимизация исключительно компонентов Windows;3 — ускорение запуска Windows и программ.

Оптимальным вариантом является использование последнего параметра, при котором SuperFetch будет автоматически кешировать системные компоненты и приложения, которые чаще других запускаются на компьютере.

Помимо этого, настроить службу SuperFetch можно и при помощи специальной команды ervices.msc, после запуска которой откроется системное окно, в котором будет отображен список всех выполняемых служб и процессов. Находим в списке процесс SysMain SuperFetch, после чего дважды кликаем на нем левой кнопкой мыши и в раскрывшемся списке выбираем один из параметров, которые были описаны ранее.

Актуальность использования

На различных тематических форумах в сети можно найти множество весьма противоречивых мнений об актуальности использования службы SuperFetch. Все дело в том, что для ее стабильной работы необходим большой объем оперативной памяти. Оптимальным вариантом станет 4 гигабайта оперативки, однако, на борту стареньких машин, как правило, установлен всего один гигабайт, которого просто недостаточно, поскольку в процессе работы семерки уровень использования службой RAM-памяти достигает 600 мегабайт, в результате чего не остается достаточного количества ресурсов для стабильной работы системы.

Таким образом, если ресурсы железа позволяют, то рекомендуется использовать службу SuperFetch, настроенную на автоматическую оптимизацию процесса запуска операционной системы и используемых программ. Стоит отметить, что актуальность использования этой технологии сохраняется даже на тех компьютерах, на которых имеется всего два гигабайта оперативки. Этого объема вполне достаточно для того, чтобы обеспечить стабильную работу Windows с активированной службой SuperFetch.

Возможные проблемы

Иногда возникают ситуации, когда в работе службы SuperFetch возникают различные сбои и ошибки. Сразу стоит отметить, что при этом никаких наглядных проявлений не происходит, а операционная система продолжает нормально функционировать. Сбой сопровождается системным уведомлением об аварийной приостановке работы службы. Как правило, такая ситуация возникает из-за недостаточного объема ОЗУ. В этом случае единственным выходом станет полное отключение службы.

computerologia.ru

Отключение Superfetch и Prefetch для SSD в Windows 7.

В этой статье мы рассмотрим, как можно отключить Prefetch и SuperFetch в Windows 8 и Windows 7  на твердотельных накопителях. В этой статье мы видели, как Windows 8 относится к Дефрагментации на твёрдотельных накопителях.Прежде чем мы начнем , позвольте мне ясно объяснить,что это не очень хорошая идея, чтобы отключить SuperFetch или Prefetch в режиме обычного жесткого диска,но для твердотельных накопителей , это совсем другое дело!

SuperFetch , Prefech и SSD в Windows 8

Каждый раз,когда вы запускаете какое нибудь приложение на компьютере,создаётся файл Prefetch который содержит информацию о файлах,он загружается приложением и специально создаётся операционной системой Windows.Вся информация которую содержит файл Prefetch в основном используется для оптимизации времени загрузки приложения в следующий раз, когда вы запускаете это приложение.SuperFetch пытается предсказать,какие приложения вы будете запускать в следующий раз и предварительно загружает все необходимые данные в память.Алгоритм его прогнозирования превосходящий и может предсказать,какие ближайшие 3 приложения вы запустите и к какому времени.Если короче,то SuperFetch и Prefetch являются управленческой технологией Windows Storage,которые обеспечивают быстрый доступ к данным на традиционных жестких дисках.На твердотельных накопителях они приводят к ненужным операциям записи.

Поэтому в Windows 7 и Windows 8 ,по умолчанию автоматически отключены SuperFetch и Prefetch ,как только он обнаруживает SSD в вашей системе.Отключение Superfetch

Служба SysMain является той,которая связана с Superfetch.Её  работа состоит в том,чтобы поддерживать и улучшить производительность системы в течение долгого времени.Она находится в папке System32 .Их почему то нужно вручную отключать,это руководство,как можно отключить SuperFetch.Запустите services.msc,чтобы открыть диспетчер служб.Прокрутите вниз,чтобы найти службы SuperFetch , которая отвечает за поддержание и улучшение производительности системы с течением времени.Дважды щелкните на ней,чтобы открыть окно Свойства. Нажмите на Stop , чтобы остановить процесс.Сделайте тип запуска Отключено и нажмите на кнопку Применить .

Чтобы изменения системы вступили в силу,Вам придется перезагрузить компьютер.Отключить PrefetchЧтобы отключить Prefetch в Windows, запустите Regedit, чтобы открыть редактор реестра. Перейдите в следующий раздел реестра:

HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Memory Management \ PrefetchParameters

В правой части дважды щелкните на EnablePrefetcher, чтобы открыть окно его параметра DWORD.

Возможные значения для EnablePrefetcher являются:

0 — Отключить Prefetcher1 — Запуск приложения включен Предварительная загрузка2 -Включен загрузки Предварительная загрузка3-Запуск приложения и загрузки Предварительная загрузка включен

Значение по умолчанию 3. Чтобы отключить Prefetch, установите его значение в 0. Нажмите кнопку ОК и Выход.Кстати,здесь вы также можете отключить или настроить Suoerfetcher — вы увидите EnableSuperfetcher DWORD чуть ниже его.

Возможные значения для EnableSuperfetch являются:

0 -Отключить Superfetch2 -Включить SuperFetch для загрузочных файлов только2 -Включить SuperFetch только для приложений3-Включить SuperFetch для обоих загрузочных файлов и приложений

Если вы являетесь обладателем твердотельного накопителя  и пользуетесь State Drive, вы можете прочитать о бесплатной утилите SSD Life, которая может проверить здоровье вашего твердотельного накопителя и SSD Tweaker,который поможет вам настроить ваш твердотельный накопитель.

[share-locker locker_id=»13e4325e64f3ebdb1″ theme=»blue» message=»Если Вам понравилась эта статья,нажмите на одну из кнопок ниже.СПАСИБО!» facebook=»true» likeurl=»CURRENT» vk=»true» vkurl=»CURRENT» google=»true» googleurl=»CURRENT» tweet=»true» tweettext=»» tweeturl=»CURRENT» follow=»true» linkedin=»true» linkedinurl=»CURRENT» ][/share-locker]

Оцените статью: Поделитесь с друзьями!

kompkimi.ru

Техники префетчинга для улучшения производительности сайтов

Когда мы говорим о производительности на фронтенде, мы обычно думаем о таких вещах как конкатенация, минификация, кэширование и сжатие ресурсов на сервере, позволяющих загрузить страницу быстрее и помочь пользователям быстрее достигнуть своих целей.

Предварительная выборка ресурсов (префетчинг) это еще одна техника, улучшающая производительность. Мы можем использовать ее, чтобы сообщить браузеру, какие ресурсы могут понадобиться пользователю в ближайшем будущем, прежде чем пользователь их реально запросит.

Патрик Хаманн это объясняет так:

Префетчинг это способ предупреждения браузера о ресурсах, которые, скорее всего, будут использованы в будущем, некоторые предупреждения касаются текущей страницы, некоторые касаются будущих страниц. Как разработчики мы знаем, что наши приложения лучше, чем браузер. И мы можем передать эту информацию браузеру.

Практика предугадывания потребностей пользователей в ресурсах называется пребраузинг. Это составной термин, сюда относится целый набор разных техник — dns-prefetch, subresource, preconnect, the standard prefetch и prerender.

DNS-prefetch

Эта техника уведомляет браузер, что на странице используются ресурсы с другого адреса и браузер может заранее преобразовать URL в IP-адрес. Например, нам нужен ресурс типа изображения или аудио с URL example.com. Нам надо добавить в <head> следующую запись:

<link rel="dns-prefetch" href="//example.com">

Затем, когда мы будем запрашивать файлы с этого ресурса, нам не надо будет тратить время на поиск DNS. Это особенно полезно при использовании кода от третьих сторон или подключении виджетов социальных сетей.

В своем эпическом тексте о производительности фронтенда Гарри Робертс предлагает использовать эту технику:

Эта простая строчка дает команду поддерживающим браузерам начать поиск DNS для указанного домена до того, как это действительно понадобиться. Это означает, что процесс поиска DNS будет завершен к тому моменту, когда он потребуется, то есть браузер получает небольшую фору при загрузке ресурсов с “префетченного URL”.

Может показаться, что такой небольшой прирост производительности не имеет особого значения, но браузер Chrome делает так постоянно. Он автоматически ищет DNS, когда вы вводите URL в адресную строку (и иногда даже делает пререндеринг страницы) и сохраняет миллисекунды при каждом запросе.

preconnect

Этот метод очень похож на префетчинг DNS, но кроме разрешения DNS данный метод начинает TCP-соединение и согласование TLS при защищенном соединении.

<link rel="preconnect" href="http://css-tricks.com">

Подробно этот метод описан в недавней статье Ильи Григорика:

Современные браузеры стараются предвидеть, какие соединения потребуются сайту до совершения запросов. Инициируя ранние “предсоединения”, браузер может настроить необходимые сокеты заранее и удалить все затратные работы с DNS, TCP и TLS из критического пути текущего запроса. Но как бы не были продвинуты современные браузеры, они не смогут выделить подходящие цели предсоединения для всех сайтов. Хорошая новость состоит в том, что теперь мы можем подсказать браузеру, какие сокеты надо открыть перед инициацией запроса благодаря технологии предсоединения, реализованной в Firefox 39 и Chrome 46!

prefetch

Если мы уверены, что определенный файл обязательно понадобиться через некоторое время, мы можем попросить браузер заранее скачать его и сохранить в кэше для дальнейшего использования. Это может быть изображение или скрипт, или что-либо еще, кэшируемое браузером.

<link rel="prefetch" href="image.png">

В отличие от префетчинга DNS, браузер запрашивает и скачивает искомый ресурс и сохраняет его в кэше. Однако, это зависит от некоторых условий, префетчинг может быть и проигнорирован браузером. Например, если запрашивается большой файл со шрифтами при медленном интернет-соединении. А Firefox предзагружает ресурсы только находясь в ленивом режиме.

Брэм Стейн в своем посте по этому вопросу пишет, что это может дать заметное улучшение производительности при загрузке веб-шрифтов. На данный момент файлы со шрифтами перед загрузкой ждут построения DOM и CSSOM. Префетчинг позволяет обойти вызванные этим проблемы с производительностью.

Примечание: последние версии Chrome и Firefox показывают, какие из ресурсов были предзагружены на вкладке “Сеть” в инструментах разработчика. Также полезно помнить, что для префетчинга нет ограничений “same-origin”, то есть вы можете задать предзагрузку ресурсов с любого домена.

subresource

Еще одна техника префетчинга помогает идентифицировать ресурсы с максимальным приоритетом, которые должны запрашиваться в первую очередь. Например, в Chrome и Opera мы можем добавить в head следующую запись:

<link rel="subresource" href="styles.css">

Согласно документации Chrome эта запись работает следующим образом:

“LINK rel=subresource” предоставляет новый тип связи ссылок с отличной от LINK rel=prefetch семантикой. В то время как rel=prefetch задает приоритет для загрузки ресурсов для других страниц, rel=subresource дает раннюю загрузку ресурсов для текущей страницы.

Итак, если ресурс потребуется на текущей странице или же потребуется максимально скоро, лучше использовать subresource, а в остальных случаях prefetch.

prerender

Эта совершенно атомная опция — prerender позволяет превентивно загрузить все файлы и ресурсы для определенного документа:

<link rel="prerender" href="http://css-tricks.com">

Стив Судерс прекрасно описал эту технику:

Это как открытие URL в скрытой вкладке — все ресурсы скачиваются, строится DOM, раскладывается макет страницы, применяются стили и исполняются скрипты. И если пользователь переходит по указанному адресу, страница открывается мгновенно. Google Search использует этот механизм уже несколько лет (Instant Pages). Microsoft реализовал пререндеринг в Bing в IE11.

Но будьте осторожны. Вы должны быть уверены, что пользователь перейдет по нужному линку, иначе клиент зря скачает все ресурсы для рендеринга страницы.

Судерс продолжает:

Как и с любой упреждающей работой, существует риск, что она окажется напрасной. И если она затратна (отбирает много ресурсов процессора, разряжает батарею или забирает много трафика), то осторожность необходима. Угадывание намерений пользователя может показаться сложным, но наиболее распространенными являются следующие сценарии: * Если это результат поиска и он очевиден, то эта страница скорее всего будет загружена. * Если пользователь перешел на страницу логина, то на следующей странице будет подтверждение логина. * Если пользователь читает статью, разбитую на несколько страниц, он скорее всего перейдет на страницу, следующую за текущей.

Наконец, Page Visibility API может использоваться для защиты от запуска скриптов до их рендеринга на странице.

Му уже обсудили все текущие разновидности префетчинга, пришло время заняться возможностями, которые будут реализованы в будущем.

Будущая возможность: preload

В новой спецификации, предзагрузка используется для тех ресурсов, которые скачиваются всегда, независимо от браузера. Если префетчинг может быть проигнорирован браузером, ресурсы в предзагрузке запрашиваются браузером в любом случае.

<link rel="preload" href="image.png">

Несмотря на то, что предзагрузка пока не поддерживается ни одним из браузеров, эта идея, безусловно, интересна.

Заключение

Предугадывание того, что будут делать пользователи, требует планирования и тестирования, но выгоды в производительности стоят того. И если мы хотим улучшить производительность, нам стоит поэкспериментировать с этими техниками.

Дополнительная литература

prgssr.ru


Prostoy-Site | Все права защищены © 2018 | Карта сайта