O Chrome implementa caches em muitos níveis de abstração. No núcleo está o cache HTTP (navegador) - um backend para outros mecanismos de cache. Geralmente os caches podem ser divididos em:
- Cache HTTP
- Caches de Service Worker
- Blink cache
Cache HTTP
Cada solicitação feita pela rede é intermediada pelo cache HTTP aderindo ao RFC . Quando solicitado pela primeira vez, o cache é sobrescrito. Os recursos são codificados pelo url de origem.
Cache do Service Worker
Para lidar normalmente com falhas de conexão de rede, você pode usar Service Workers . Os caches e o armazenamento em cache seriam retirados do disco novamente.
Blink Cache
O Blink usa Http Cache como backend em dois modos de criação - na memória e simples (sistema de arquivos). Qual é usado depende do limite definido globalmente para caches de quanta memória eles podem ocupar. Além disso, o cache do renderizador atual obtém o maior compartilhamento. O que é armazenado em cache são fontes, imagens e scripts. Se o uso de memória global atingir algum limite especificado, o backend do sistema de arquivos será usado.
Forçando no cache de memória
Se quiser que seus arquivos sejam servidos pelo mecanismo padrão de substituição de memória, você pode implementar seu próprio Service Worker. Usando Arquivo Api, os recursos podem ser lidos e armazenados no objeto na memória. Então, substituir o evento fetch suprimiria as leituras de rede e de arquivo com o conteúdo fornecido a partir deste objeto global.