Pular para o conteúdo principal

Questão de TI - Desenvolvimento de Sistemas — Node.js — FCC 2026

TI - Desenvolvimento de SistemasNode.js
Código
fc142104
Banca
FCC
Órgão
MPE SE
Ano
2026
Cargo
Ana ( )
Uma equipe está desenvolvendo uma API em Node.js que realiza operações de leitura e escrita em arquivos JSON muito grandes. Durante os testes, perceberam que, ao tentar processar arquivos com mais de 1GB, o servidor travava e aumentava drasticamente o uso de memória.   Uma solução adequada para lidar com esses arquivos de forma eficiente em tempo de execução, no contexto do Node.js, é
  1. Ausar process.nextTick() em conjunto com fs.readFileSync() para dividir o processamento em ciclos menores, evitando travamentos.
  2. Butilizar cluster para dividir a leitura entre múltiplos processos, cada um carregando o arquivo inteiro em memória, reduzindo o risco de travar um processo único.
  3. Cconverter o arquivo em Base64 e processar como string em memória, já que Node.js lida melhor com strings do que com buffers binários.
  4. Dutilizar fs.readFile() de forma assíncrona para carregar todo o arquivo, pois o modelo assíncrono evita consumo excessivo de memória.
  5. Eadotar streams (fs.createReadStream) para ler o arquivo em pedaços, processando blocos sem carregar tudo na memória.
Revelar gabarito e comentário

GabaritoE — adotar streams (fs.createReadStream) para ler o arquivo em pedaços, processando blocos sem carregar tudo na memória.

Link permanente: /questoes/fc142104