Corrigir degradação de desempenho do Notion no navegador em sessões longas de banco de dados
🔍 WiseChecker

Corrigir degradação de desempenho do Notion no navegador em sessões longas de banco de dados

Você está enfrentando rolagem lenta, atraso na digitação e travamentos ao alternar visualizações em um banco de dados do Notion que ficou aberto no navegador por mais de 30 minutos. Essa degradação de desempenho ocorre porque o Notion mantém todo o estado do banco de dados na memória do navegador e recalcula filtros, classificações e rollups a cada interação sem descarregar dados obsoletos. Este artigo explica a causa técnica por trás da lentidão e fornece um conjunto de soluções práticas para restaurar a capacidade de resposta sem perder seu trabalho.

Principais conclusões: corrigir a lentidão do Notion no navegador durante sessões longas de banco de dados

  • Ctrl + Shift + R (Windows) ou Cmd + Shift + R (Mac): força um recarregamento completo da página que limpa o estado do banco de dados em cache do Notion e reduz o uso de memória.
  • Alternar a visualização do banco para Tabela e depois voltar: redefine o mecanismo de rolagem virtual e limpa cálculos de linhas obsoletos que causam atraso na digitação.
  • Configurações e Membros do Notion > Notificações > Desativar notificações da área de trabalho: reduz a sondagem em segundo plano que acumula memória ao longo do tempo.

ADVERTISEMENT

Por que o Notion fica lento no navegador após uso prolongado do banco de dados

O Notion usa um modelo de dados do lado do cliente que carrega todo o esquema do banco de dados, todas as linhas visíveis e campos calculados, como rollups e fórmulas, no heap JavaScript do navegador. Quando você permanece em uma página de banco de dados por uma sessão longa, o Notion não coleta lixo dos estados de visualização antigos nem descarrega dados de linhas ocultas. Cada alteração de filtro, operação de classificação ou troca de visualização adiciona novos objetos à memória enquanto os antigos permanecem referenciados pela pilha de desfazer e pelo histórico de visualizações. Com o tempo, a aba do navegador consome mais de 1 GB de memória, fazendo com que a thread de renderização bloqueie e atrase a entrada do usuário.

Um fator secundário é o mecanismo de rolagem virtual. O Notion renderiza apenas as linhas visíveis na janela de visualização, mas mantém um índice sombra de todas as linhas do banco de dados. Quando o banco contém mais de 500 linhas, o índice sombra recalcula posições a cada evento de rolagem. Se você tiver várias visualizações de banco de dados vinculadas na mesma página, cada visualização mantém seu próprio índice sombra, multiplicando a sobrecarga de memória e CPU. O loop de eventos do navegador então luta para processar teclas e cliques do mouse, resultando na lentidão característica de sessões longas de banco de dados.

Passos para restaurar o desempenho do navegador sem fechar a aba

Esses passos estão ordenados do menos disruptivo ao mais completo. Execute-os sequencialmente até que a lentidão desapareça. Você não precisa fechar a aba do navegador ou perder alterações não salvas.

  1. Faça uma atualização forçada da página
    Pressione Ctrl + Shift + R no Windows ou Cmd + Shift + R no Mac. Isso força o navegador a recarregar a página do servidor em vez do cache. O Notion recarrega o estado do banco de dados do zero, limpando objetos JavaScript acumulados e reduzindo o uso de memória em até 40 por cento. Suas alterações não salvas são preservadas porque o Notion salva automaticamente no servidor a cada poucos segundos.
  2. Alterne a visualização do banco para Tabela e depois volte para a visualização original
    Clique no nome da visualização atual no topo do banco, selecione Tabela no menu suspenso, aguarde 3 segundos e depois volte para a visualização original. Essa ação força o Notion a reconstruir o índice de rolagem virtual do zero. O índice sombra é descartado e recalculado apenas para a visualização atual, o que resolve a lentidão na rolagem e o atraso na renderização de linhas.
  3. Feche visualizações de banco de dados vinculadas não utilizadas na mesma página
    Passe o mouse sobre cada bloco de visualização de banco de dados vinculada, clique no ícone de seis pontos à esquerda e selecione Excluir. Visualizações de banco de dados vinculadas mantêm cada uma uma cópia separada do banco de dados de origem na memória. Remover visualizações que você não está usando ativamente pode liberar de 200 a 500 MB de memória. Você pode adicioná-las novamente mais tarde pelo menu do banco de dados sem perda de dados.
  4. Desative as notificações do navegador do Notion
    Abra Configurações e Membros do Notion na barra lateral esquerda, vá em Notificações e desative Notificações da Área de Trabalho. O Notion consulta o servidor em busca de atualizações de notificação a cada 10 segundos quando as notificações estão ativadas. Essa sondagem mantém a conexão WebSocket ativa e impede que o navegador entre em um estado ocioso de baixo consumo de energia. Desativar as notificações interrompe essa atividade em segundo plano e reduz o uso da CPU em 5 a 10 por cento.
  5. Limpe o cache do service worker do Notion
    Abra as ferramentas do desenvolvedor do navegador com F12, vá para a aba Application, selecione Service Workers à esquerda, encontre o service worker do Notion e clique em Unregister. Em seguida, recarregue a página. O service worker armazena em cache as respostas do banco de dados para permitir edição offline, mas ao longo de uma sessão longa o cache fica obsoleto e causa fragmentação de memória. Cancelar o registro força o Notion a criar um novo service worker com um cache limpo.

ADVERTISEMENT

Se o Notion ainda apresentar problemas após a correção principal

Banco de dados com mais de 2000 linhas congela ao rolar

O mecanismo de rolagem virtual do Notion tem dificuldades com bancos de dados que excedem 2000 linhas em uma única visualização. O navegador tenta manter o índice sombra de todas as linhas na memória, causando quedas de quadros e congelamentos. Para corrigir isso, crie uma visualização filtrada que mostre apenas um subconjunto de linhas, como o mês atual ou um responsável específico. Clique no botão Filtrar acima do banco de dados, adicione uma condição que limite as linhas e salve a visualização. O desempenho da rolagem melhora imediatamente porque o índice sombra diminui para a contagem de linhas filtradas.

A página fica sem resposta após alternar visualizações rapidamente

Alternar entre as visualizações Galeria, Quadro e Linha do tempo em rápida sucessão carrega várias configurações de visualização na pilha de desfazer. Cada troca de visualização adiciona um instantâneo de estado que o navegador não pode coletar como lixo até que a pilha de desfazer seja limpa. Para resolver isso, abra a página em uma nova aba do navegador clicando com o botão direito no nome da página e selecionando Abrir link em nova aba. A nova aba começa com uma pilha de desfazer vazia e nenhum estado de visualização obsoleto. Feche a aba original para liberar sua memória.

A entrada do teclado tem um atraso de 2 segundos após editar uma propriedade de fórmula ou rollup

Propriedades de fórmula e rollup recalculam todas as linhas do banco de dados sempre que qualquer linha é editada. Em um banco de dados com 500 linhas, um único recálculo de fórmula pode bloquear a thread principal por 1 a 3 segundos. Para reduzir esse atraso, converta fórmulas complexas em versões mais simples que não referenciem outras propriedades do banco de dados. Alternativamente, mova a fórmula para um banco de dados separado e use uma relação para puxar o valor calculado apenas quando necessário. Isso reduz o escopo do recálculo de todo o banco de dados para apenas as linhas relacionadas.

Fatores de desempenho do Notion no navegador: sessão longa vs. sessão nova

Fator Sessão nova (0-10 min) Sessão longa (30+ min)
Tamanho do heap JavaScript 150-300 MB 800 MB a 1,5 GB
Tempo de resposta da rolagem Abaixo de 50 ms 200-800 ms
Linhas do índice sombra virtual Apenas linhas visíveis Todas as linhas já carregadas
Profundidade da pilha de desfazer 10-20 ações 50-100 ações
Intervalo de sondagem de notificações 10 segundos 10 segundos (sobrecarga acumulada)

A tabela mostra que o aumento primário de memória vem do índice sombra e da pilha de desfazer, e não do conteúdo do banco de dados em si. Uma atualização forçada (Ctrl + Shift + R) redefine todos os três fatores para os níveis de uma sessão nova. Se você trabalha com bancos de dados grandes diariamente, agende uma atualização forçada a cada 20 minutos para evitar o acúmulo de memória.

Agora você pode restaurar o desempenho do Notion no navegador durante sessões longas de banco de dados usando uma atualização forçada, alternando visualizações para redefinir o índice virtual e desativando notificações em segundo plano. Para bancos de dados com mais de 2000 linhas, aplique visualizações filtradas para limitar o conjunto ativo de linhas. Como dica avançada, abra o Gerenciador de Tarefas do navegador (Shift + Escape no Chrome) para monitorar o uso de memória do Notion em tempo real e acione uma atualização forçada quando o uso exceder 800 MB.

ADVERTISEMENT