Parar de sondagens para distintivos que ninguém está olhando, e parar de acordar todos os consumidores

Performancekamo-internal
Navios
26 de agosto de 2026 às 02:37 UTC
Autor
kamo
Enviar
ab4e701

Dois fornecedores sempre montados fizeram uma sondagem de um minuto sem visibilidade. LegalPackageCount não teve nenhum; TrainingPendingCount teve uma mudança de visibilidade re-ler mas o seu intervalo marcou independentemente. Cada guia de fundo, portanto, acordou uma vez por minuto para atualizar um crachá que ninguém poderia ver, e cada wake é um pedido as respostas pod - multiplicado por tabulações abertas, por membro. Ambos estão fechados em `documento. visibilidade Estado === 'visível' agora, com o tick duplicando como a re- leitura quando a aba volta. Isso não é uma regressão de frescor, é o oposto: o número se torna atual no momento em que o membro olha para ele, onde antes Eles viram o que o último tique deixou para trás, até um minuto passado. Nenhuma das sondagens é mecanismo de qualquer maneira - ambas as contagens chegam sobre STOMP; o intervalo é a rede de segurança para Frames deixados cair antes da assinatura ficar ao vivo. SuporteCountContext já funcionou desta forma e é o que ambos agora combinam. Quatro provedores publicaram um novo objeto literal como seu valor de contexto, então React viu o contexto muda em cada renderização do provedor e desperta cada consumidor para entregá-los um valor idêntico. Todos eles se sentam no layout raiz ou AuthedChrome, então "todos consumidor" é a maior parte da aplicação: - TemaConfigContext — setLogoFullExt é estável por usoContrato de Estado - SupportCountContext — ambas as marcas são usadasCallback'd - LegalPackageCountContext — atualização é usoCallback'd - SocialAgentContext — `value={}}`, um novo objeto vazio cada renderizado para um contexto que não carrega nada e existe apenas para o seu efeito colateral assinatura STOMP; agora um constante do módulo congelado PublicProvider's OrgContext parece o mesmo bug e é deliberadamente deixado em paz: o root layout é um componente de servidor, de modo que o provedor efetivamente nunca re-renders e memorizar seria movimento sem movimento. Verificado: tsc --noEmmit clean sobre todos os cinco contextos mais AuthedChrome com seus importações transitivas; todos os scripts de 9 guardas passam.

Todas as alterações

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.

Começar Livre Para SempreVer Preços