Todos os artigos
Engenharia

Otimização de imagem Next.js para sites de carros

O componente Image, padrões remotos, dimensionamento e cache: como os sites de carros do Next.js servem imagens de veículos rapidamente sem lutar contra o framework.

Robin Ashford12 de outubro de 20266 minutos de leitura
Hero do blog: nextjs-vehicle-images

Next.js vem com fortes opiniões sobre imagens, e os sites de carros testam todas elas: centenas de imagens remotas por página, proporções que não podem mudar, e um CDN já na frente dos ativos. Usados bem, o framework e uma API de imagem de veículos se reforçam; usados de forma ingênua, eles otimizam os mesmos bytes duas vezes e cobram por isso. Eis a configuração que funciona em produção.

Deixe um otimizador vencer

O componente Image quer redimensionar e re codificar tudo através do seu próprio pipeline. A imagem de veículo de uma API parametrizada chega já dimensionada e já em WebP, então a dupla otimização adiciona latência e computação sem necessidade. O padrão limpo: solicite larguras exatas da API, e deixe o componente lidar com o layout, carregamento preguiçoso e prioridade sem reprocessar, ou delimite seus padrões remotos de forma estreita e passe o que já é ótimo.

Inline do blog: nextjs-vehicle-images
  • Solicite a largura renderizada da API, por ponto de interrupção
  • Configure padrões remotos para o host de imagens uma vez, de forma rigorosa
  • Use fill ou dimensões explícitas para travar caixas de proporção
  • Reserve prioridade para o herói acima da dobra, nada mais

Estratégia de renderização por tipo de página

Sites de carros se dividem naturalmente pela frescura dos dados. Páginas de detalhes de inventário ao vivo querem renderização no servidor com revalidação curta, para que o preço e a disponibilidade permaneçam honestos. Páginas de categoria e landing toleram vidas estáticas mais longas, e suas URLs de imagem, sendo estáveis e parametrizadas, cacheiam perfeitamente em todas as camadas. O sistema de imagem permanece idêntico entre as estratégias; apenas as janelas de revalidação diferem, o que mantém o modelo mental pequeno.

A galeria, a grade e a dobra

As três superfícies do site de carros se mapeiam limpidamente em primitivas de framework. A grade de busca usa células de proporção fixa com carregamento preguiçoso abaixo da dobra, exatamente como o guia de busca prescreve. A galeria de detalhes pré-carrega sua primeira imagem com prioridade e adia o conjunto de ângulos até a interação. A visualização de comparação se apoia no mesmo enquadramento da API, então células de tamanho igual não precisam de ajustes por imagem. Nada disso é inteligente; tudo isso é decidir uma vez e codificar a decisão em componentes.

Um componente VehicleImage que vale a pena

Envolva o Image do framework uma vez: propriedades para o ID de veículo estável, ângulo, dica de largura e texto alternativo, construção de URL dentro, dimensionamento e padrões de carregamento aplicados. Cada superfície então renderiza veículos através de um componente, e o dia em que você muda uma convenção de parâmetros, um arquivo muda. Adicione um esqueleto de proporção fixa e uma queda de marca para erros, e os casos de borda são projetados em vez de descobertos.

Os frameworks premiam as equipes que decidem a política de imagem uma vez e a codificam, e punem as equipes que decidem isso por página.

Para a arquitetura de cache subjacente, a estratégia de cache combina diretamente com essa configuração, e o guia React e Vue cobre o padrão de componente para pilhas além do Next.

Deploys, caches e o dividendo da URL estável

Uma última nota de produção: como as URLs da API são estáveis e parametrizadas, elas sobrevivem aos seus deploys intactas, o que mantém os caches do CDN quentes entre as versões e poupa o otimizador do framework de reprocessar um catálogo que não mudou. Equipes que migram de ativos armazenados localmente notam a diferença no primeiro deploy após: a camada de imagem simplesmente não faz mais parte da versão, e os tempos de build e as taxas de acerto de cache confirmam isso.

Quer essas imagens para seu inventário?

Diga-nos quais veículos você lista e enviaremos exemplos reais do seu próprio estoque.

Robin Ashford
Escrito por
Robin Ashford
Chefe de Conteúdo

Robin escreve sobre o ponto onde carros e software se encontram: imagens, dados de veículos e os sistemas que vendem veículos online. Uma década em marketplaces, plataformas de leasing e ferramentas para concessionárias ensinou a ela quais problemas são reais, e os textos aqui se concentram nesses.

Achou isso útil?

Adicione como uma fonte preferida no Google