O que é confiabilidade da rede e como ela é medida?

Um grande número de pessoas aproveita a Web moderna, utilizando uma gama de diferentes dispositivos e tipos de conexões de rede. Suas criações podem alcançar usuários de todo o mundo, mas oferecer uma experiência confiável na Web para todos os usuários pode ser um desafio. Pode ser um desafio apenas entender o que significa confiabilidade.

Uma maneira de pensar sobre a confiabilidade é se seu app da Web funcionará sem uma conexão de rede. Esse é um tipo de confiabilidade que os usuários percebem em apps específicos da plataforma instalados em um dispositivo móvel por uma app store. Ao ver o ícone de um desses apps, você espera poder tocar nele e abrir algum tipo de experiência, independentemente de estar conectado à Internet ou não.

Até recentemente, tem sido um desafio criar aplicativos da Web que sejam confiáveis sem uma conexão de rede.

Confiávelmente rápido

Outra maneira de pensar sobre a confiabilidade é se os usuários podem confiar no carregamento do seu app da Web em uma velocidade suficientemente rápida quando têm uma conexão de rede que pode ser inferior à ideal. Os usuários recorrentes terão a mesma experiência de interação com seu app da Web quando estiverem em uma conexão celular e usando Wi-Fi? E os usuários que têm uma conexão de alta latência, ou "lie-fi". Seu app da Web será rápido mesmo nessas situações?

Não basta ser rápido nas melhores circunstâncias. Os usuários vão visualizar o desempenho do seu app da Web pelas lentes dele em todas as condições de rede.

É possível ser confiável

A boa notícia é que a plataforma moderna da Web oferece tecnologias, como service workers e a API Cache Storage, que podem servir como elementos básicos para a criação de aplicativos da Web confiáveis. Elas permitem escrever um código que fica entre o app da Web e a rede. Em muitos casos, é possível ignorar a rede e, em vez disso, usar o conteúdo armazenado em cache anteriormente para atender às solicitações do app da Web.

Luz indicadora: responde informando "200 OK" quando você está off-line

Depois de começar a criar um service worker e disponibilizar conteúdo de caches, é difícil saber se você está fazendo isso de maneira eficaz. Como você sabe se o service worker implementado realmente ajuda seu app da Web a evitar a rede? Como evitar que uma pequena alteração na estratégia de armazenamento em cache interrompa sua experiência off-line cuidadosamente elaborada?

O Lighthouse oferece um teste específico que é particularmente interessante para criar um app da Web confiável: Responde com "200 OK" quando estiver off-line:

O relatório do Progressive Web App do Lighthouse mostrando que um usuário aprovado responde com 200 durante a auditoria off-line.

O que está sendo realmente testado aqui? Ele se resume a simular uma perda de conectividade de rede no seu navegador, seguida por uma tentativa de carregar qualquer URL do site que esteja sendo auditado. Isso testa um aspecto da criação de um site confiável, ou seja, confiável enquanto estiver off-line, usando uma sequência de ações controlada e repetível.

É uma jornada

Se você está apenas começando, é muito provável que receba um resultado negativo para "Responde com 200" durante a verificação off-line. Tudo bem! A menos que você esteja usando um projeto inicial personalizado, os aplicativos da Web não têm esse tipo de confiabilidade por padrão. Os próximos guias vão apresentar as técnicas necessárias para identificar o que seu app da Web está carregando e ensinar você a usar o Lighthouse para tornar essa experiência de carregamento confiável.

Durante esse processo, continue executando as auditorias do Lighthouse. Eles servem como orientação durante toda a sua jornada, começando com um novo aplicativo da Web e terminando com um Progressive Web App confiável.