---
title: "Скорость и кеш tuk-tuk.online: стратегии Service Worker"
nav_title: "Скорость и кеш"
url: https://docs.tuk-tuk.online/pwa/caching
markdown: https://docs.tuk-tuk.online/pwa/caching.md
section: "Приложение и офлайн"
description: "Как кабинет tuk-tuk.online кеширует файлы интерфейса, данные и медиа: предзагрузка через Service Worker, стратегии «сеть в приоритете» и «кеш в приоритете», сроки хранения, обновление и очистка."
keywords: ["кеширование PWA", "скорость загрузки", "Service Worker кеш", "Workbox стратегии", "предзагрузка", "CacheFirst", "NetworkFirst", "быстрая загрузка"]
lang: ru
product: tuk-tuk.online
app: https://lk.tuk-tuk.online
api_base: https://back.tuk-tuk.online
---

> [!AI] Кратко
> Кеширование в кабинете tuk-tuk.online: Service Worker предзагружает файлы интерфейса, для API используется стратегия «сеть в приоритете» с таймаутом 3 секунды, для шрифтов, файлов, изображений и медиа «кеш в приоритете»; обновления применяются в фоне.
>
> - Два уровня: файлы приложения (Service Worker и Cache API) и данные (Apollo Cache и IndexedDB).
> - GraphQL и REST API: сеть в приоритете, таймаут 3 с, срок 7 дней, до 200 записей.
> - Шрифты: кеш в приоритете, 1 год, 20 записей. Файлы и изображения: 90 дней, 500 записей. Медиа: 30 дней, 100 записей.
> - Обновление: новые файлы скачиваются в фоне, применяются при следующем открытии, старые кеши удаляются.
> - Ручная очистка: Chrome F12 → Application → Storage → Clear site data; Firefox F12 → Хранилище → Очистить; Safari → Конфиденциальность → Управление данными сайтов.
>
> Связанные страницы: https://docs.tuk-tuk.online/pwa, https://docs.tuk-tuk.online/pwa/offline, https://docs.tuk-tuk.online/pwa/install, https://docs.tuk-tuk.online/files

# Скорость и кеш

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

Два независимых уровня: кеш файлов приложения (Service Worker) и кеш данных (Apollo Cache в IndexedDB).

## Два уровня кеша

| Уровень | Что хранит | Технология |
|---|---|---|
| Файлы приложения | HTML, CSS, JavaScript, иконки, шрифты | Service Worker и Cache API |
| Данные | Диалоги, контакты, задачи, настройки | Apollo Cache и IndexedDB |

Файлы приложения кешируются один раз при первой загрузке, данные обновляются при каждом запросе. Кеш данных описан в [Офлайн-режиме](https://docs.tuk-tuk.online/pwa/offline).

## Предзагрузка

При первом посещении Service Worker скачивает и сохраняет основные файлы приложения. Дальше:

- интерфейс грузится из кеша, а не с сервера;
- при недоступном сервере интерфейс всё равно открывается;
- обновления скачиваются в фоне и применяются при следующем открытии.

## Стратегии кеширования

| Стратегия | Как работает | Для чего |
|---|---|---|
| Сеть в приоритете | Запрос к серверу; если ответа нет за 3 секунды, ответ берётся из кеша | Данные, которые должны быть свежими |
| Кеш в приоритете | Сначала кеш; если записи нет, запрос к серверу | Файлы, которые редко меняются |

| Ресурс | Стратегия | Срок хранения | Лимит записей |
|---|---|---|---|
| Шрифты (Google Fonts) | Кеш в приоритете | 1 год | 20 |
| GraphQL API | Сеть в приоритете, таймаут 3 с | 7 дней | 200 |
| REST API | Сеть в приоритете, таймаут 3 с | 7 дней | 200 |
| Загруженные файлы | Кеш в приоритете | 90 дней | 500 |
| Изображения | Кеш в приоритете | 90 дней | 500 |
| Медиа (видео, аудио) | Кеш в приоритете | 30 дней | 100 |

## Обновление приложения

1. Service Worker скачивает новые файлы в фоне.
2. При следующем открытии показывается новая версия.
3. Старые кеши удаляются.

От пользователя ничего не требуется.

## Очистка кеша

Автоматически:

- по лимиту записей: при превышении удаляются самые старые;
- по сроку: истёкшие записи удаляются при следующем запросе;
- при обновлении: кеши предыдущих версий очищаются.

### Вручную

Если нужно начать с чистого листа:

| Браузер | Как |
|---|---|
| Chrome | F12 → Application → Storage → Clear site data |
| Firefox | F12 → Хранилище → Очистить |
| Safari | Настройки → Конфиденциальность → Управление данными сайтов |

> [!WARNING] Очистка данных сайта удаляет и IndexedDB, то есть кеш данных и очередь офлайн-действий. Сначала дождитесь синхронизации при подключённой сети.
