O relógio drena no compositor, não em um cronômetro
O relógio de volta do feltro funcionou um set de 200msInterval escrevendo uma fração em React. Essa é uma maneira honesta de construir uma barra que deve rastre...
Parar a re- transferência da barra de ferramentas de imagens em linha em cada moldura de rolagem
measure () roda em cada rolagem e redimensiona o evento e constrói um novo objeto de estado toda vez, então a barra de ferramentas re-rendered se ou não algo so...
Uma conversa sobrevive à janela que a mostra
Abrir uma janela de chat custa sete pedidos antes de uma mensagem renderizada — histórico, membros, recibos, mark-read, o instantâneo não lido, o avatar da cont...
Um instantâneo de sessão para a aba, não um por instância de gancho
useUserInfo realizou sua sessão em três células useState. Tem 187 locais de chamadas e aproximadamente 27 de eles são montados para toda a sessão — o navegador,...
Geist navio como WOFF2
Ambas as faces são pré-carregadas em cada rota, então o formato é pago em cada primeira visita. 134.132 B de WOFF tornou-se 112.252 B de WOFF2 — 21.880 B, um co...
Um mercado de varejo não deve baixar as guias de hipoteca
A página de configurações de mercado importou todas as 24 abas estaticamente, então cada mercado enviado cada a página — um mercado retalhista transportava as s...
Mostrar o primeiro papel de parede sem esperar pelo mais lento
O slideshow precarregou cada papel de parede por trás de uma única promessa. Tudo, então nada pintado até que a última imagem no set tivesse resolvido. Em um in...
Cada contexto e gancho agora lê a informação do usuário através do coalescer
Sete chamadas independentes /api/user-info disparadas em uma carga autenticada fria, cada uma pedindo para o membro id um irmão já estava pedindo no mesmo momen...
Um temporizador de atualização para o aplicativo inteiro, não um por useUserInfo()
useUserInfo tem 194 sites de chamadas, cerca de uma dúzia deles montados para toda a sessão — o navegador, os provedores de shell, a plataforma de lançamento. C...
Server-render o aplicativo autenticado, e corrigir o backback org que 500s
MemberListProvider retornou nulo até que seu efeito de montagem foi executado, e ele fica acima do NavTop E {crianças} — de modo que uma única linha manteve o p...
Uma caixa de seleção não deve re- renderizar a barra lateral da pasta
Seis sites de chamadas leram o email store com um `useEmailStore(). Em zustand que assina a loja WHOLE, portanto qualquer alteração em qualquer lugar re-render ...
Memoize o valor não lido em todo o aplicativo, corrija um efeito de auto-retriggering
UnreadContext publicou um objeto de quatorze membros como seu valor de contexto, então Reaja viu a mudança de contexto em cada renderização do provedor e acordo...
Parar de sondagens para distintivos que ninguém está olhando, e parar de acordar todos os consumidores
Dois fornecedores sempre montados fizeram uma sondagem de um minuto sem visibilidade. LegalPackageCount não teve nenhum; TrainingPendingCount teve uma mudança d...
Uma org sem telefone não deve abrir uma tomada de chamadas
O softphone abriu sua conexão SockJS/STOMP para mídia. boot. getCapabilities () é esperado algumas linhas acima e é a própria resposta da infra- estrutura para ...
Parar de voltar a fundir todo o catálogo em cada pedido
getRequestConfig é executado por solicitação, e para qualquer membro não-inglês chamado mergeWithFallback sobre todo o catálogo de 23,252 chaves toda vez — reco...
Uma mensagem chegando não deve re-render toda a história
Lote 5 da auditoria de desempenho do cliente. MessageList mapeia todas as mensagens carregadas para uma MessageBubble, e MessageBubble não foi memorizado. Com ...
Tire 187 KB de CSS da AG Grid do caminho crítico de cada rota
Lote 4 da auditoria de desempenho do lado do cliente, e o último dos grandes. app/globals.css aberto com duas @importações das folhas de estilo do ag-grid, e o...
Pare de enviar todo o catálogo de mensagens para a entrega de assinatura
Lote 3 da auditoria de desempenho do cliente. O layout root passou todas as mensagens para NextIntlClientProvider em cada rota. A catálogo é 1.05 MB compacto —...
Dividir as janelas de ferramentas da shell, parar a tempestade do temporizador ocioso
Lote 2 da auditoria de desempenho do cliente. Como com o lote 1, nada um membro pode ver ou fazer alterações. O registro de ferramentas importou todas as dez j...
Parar o envio do código shell nenhuma rota pode alcançar
Lote 1 da auditoria de desempenho do cliente. Cada mudança é de preservação do comportamento; Nada que um membro possa ver ou fazer é diferente depois. I18nFor...
Obter uma página filtrada pelo servidor em vez de toda a organização
A grade obteve cada lead na org e reduziu-a em uma linha ~300 useMemo. Medida na produção 2026-08-20: 1.427 leads obtidos assim sete pode ser mostrado, 23,3 s a...
Pedir a contagem por ler, não a árvore de pastas inteira
O crachá de e- mail precisa de um inteiro e foi buscar todas as pastas na caixa de correio para encontrá-lo, que nos provedores IMAP é o mais caro chamar a infr...
Pare de fazer a caixa de entrada esperar em duas pesquisas que pode ver a resposta para
Duas viagens redondas ainda se sentaram na frente de uma caixa de entrada renderizada, e por este ponto eles foram a única coisa deixada lá — a árvore de pastas...
Pergunte mais cedo, pergunte uma vez, e pare de perguntar o que não mudou
Mais três coisas entre abrir / mensagens e ver o correio. Nada foi solicitado até que o pacote tivesse aterrado. /mensagens puxa várias megabytes de JavaScript...
Pare de pagar por uma chave que nada lê, e pare de esperar para perguntar
Três coisas estavam diminuindo /mensagens para baixo antes de uma única mensagem foi obtida. Cada chamada de e-mail fez uma viagem redonda para /api/generate-o...
Hash com BLAKE3 somente, então pular o upload realmente economiza tempo
Dedup funcionou — o servidor logou 'linked SEM upload' e 358 MB nunca deixou o máquina — mas o membro ainda esperou, porque a computação SHA3-256 ao lado do BLA...
Mesclar DTOs parciais no estado local, soltar refetch-after-patch
Cada gravação automática de estilo de edição (campos de nomes, emprego, ativos, passivos, REO, declarações, militares, demografia do HMDA, originador) usado par...
Eliminate OTK Redis overhead and proxy log noise for message fetches
- Bypass OTK generation in the MediaService proxy route: forward the *** cookie directly instead of generating a one-time key, removing 4 Redis round-trips ...
Melhorar o desempenho de carregamento de mensagens de chat
- Cache getCurrentMemberId () resulta em um ref para evitar /api/user-info repetido chamadas em cada mensagem WebSocket e indicador de digitação - Paralelizar h...
Reverter para o driver de docker para compilações mais rápidas
- driver docker-container adiciona sobrecarga de inicialização - Para compilações rápidas (<3min), o driver de docker é mais eficiente - Opções de cache removid...
Mudar para o driver do docker-container com cache para o desempenho de construção ideal
Como o que vês no transporte?
Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.