Análise, renderização e streaming de JSON grande
A análise muitas vezes não é o gargalo; a renderização e a cópia são. Otimize ao longo das quatro camadas "analisar → percorrer → renderizar → transportar" para não desperdiçar esforço.
Um arquivo JSON de dezenas de megabytes pode congelar a thread principal, e um JSON cuidadosamente construído pode atravessar um serviço; esta categoria cobre tanto throughput quanto defesas.
6 artigosA análise muitas vezes não é o gargalo; a renderização e a cópia são. Otimize ao longo das quatro camadas "analisar → percorrer → renderizar → transportar" para não desperdiçar esforço.
O `JSON.parse` em si é seguro; o perigo está no que acontece depois dele: merge profundo, atribuição por caminho, embutir em HTML, profundidade e tamanho ilimitados.
Minificar corta 30-50% do JSON cru, mas o gzip apaga a maior parte desse ganho. Números medidos em formas reais, além dos quatro casos em que minificar piora as coisas.
Um arquivo JSON de 10MB pode virar 30-50MB no heap do V8. Aprenda quanto strings, objetos e números realmente custam, como estabelecer a linha de base com `process.memoryUsage` e quando o streaming ajuda.
O engasgo começa quando os nós de DOM são criados, não quando você rola. Cobre renderização com recolhimento primeiro, listas virtuais, destaque de busca e fronteiras de Worker, com métricas.
Exportações JSON de dezenas de MB frequentemente travam editores de texto e ferramentas online, embora o parsing leve apenas algumas centenas de milissegundos. Medimos tempo e memória em cada etapa com uma amostra de 45 MB e 500.000 registros, mostramos que o custo real está na contagem de linhas e nós e apresentamos uma tabela de decisão de ferramentas por tamanho: visualização online, extração via linha de comando, streaming e aplicativo de desktop.