Вопрос:

Зачем использовать сервисный работник для кеширования, когда кеш браузера обрабатывает кеширование?

browser-cache offline-caching service-worker

4835 просмотра

3 ответа

1315 Репутация автора

Я читаю работника сервиса для автономного кэширования, аналогичного кэшированию в браузере. Тогда зачем отдавать предпочтение сервисному работнику для этого кеширования. Даже кеширование в браузере будет проверять, изменен файл или нет, и затем поступает из кеша, тогда как сервисный работник обрабатывает то же самое из нашего кода. Но по умолчанию браузер имеет эту функцию, так почему бы предпочесть сервисного работника?

Автор: vbharath Источник Размещён: 28.04.2016 01:24

Ответы (3)


16 плюса

9099 Репутация автора

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

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

Они также используются для таких вещей, как push-уведомления.

Документация: https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API , https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/Using_Service_Workers

Автор: Daniel Herr Размещён: 28.04.2016 07:21

4 плюса

1315 Репутация автора

Я хотел поделиться тем, что я наблюдал, просматривая документацию сервисного работника и реализовав ее.

  1. Кеш браузера отличается, так как работник службы поддерживает автономный кеш, веб-приложение будет обращаться к содержимому, которое кэшируется, даже если сеть недоступна.
  2. Работник сервиса даст родной опыт.
  3. Служебный работник не может изменить содержимое DOM, но все же он может обслуживать страницы в своей области видимости. С помощью таких событий, как postMessage, можно получить доступ к странице и изменить DOM.
  4. Работник сервиса не требует взаимодействия с пользователем или веб-страницы. Он работает в фоновом режиме.
Автор: vbharath Размещён: 30.04.2016 04:52

0 плюса

41 Репутация автора

На самом деле, медленнее отвечать на запрос, когда вы используете sw вместо http cache ... Так как sw использует cache api для хранения содержимого кеша, он действительно медленнее, чем кеш браузера - кеш памяти и дисковый кеш.

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

Если ваша ситуация не достаточно сложна, вы не должны использовать ее

Автор: user2248202 Размещён: 13.06.2019 03:38
Вопросы из категории :
32x32