Un rafraîchissement pour l'ensemble de l'application, pas un par utilisationUserInfo()

Performancekamo-internal
Expédié
26 août 2026 à 03:42 UTC
Auteur
kamo
Commite
10cb7a4

useUserInfo dispose de 194 sites d'appel, dont une douzaine sont montés pour l'ensemble de la session. le nav, les fournisseurs de shells, le lanceur. Chaque cas est armé de 5 minutes. intervalle et son propre écouteur de changement de visibilité, donc l'application transportait une douzaine de minuteurs Et une douzaine d'auditeurs font tous la même chose au même moment. Ils partagent l'un de chacun d'eux maintenant. Chaque abonné rafraîchit encore son propre État exactement comme Avant, donc rien sur la façon dont les changements de droits axés sur les administrateurs se propagent sont différents - ce Il ne s'agit que de ne pas armer une douzaine de temporisateurs pour déclencher un travail. Les demandes étaient les suivantes: déjà coalescé par loadUserInfoShared et rafraîchissementSessionShared, de sorte que le côté réseau était Jamais le problème. Une différence de comportement délibérée, et c'est une amélioration: les cas utilisés pour cocher leurs propres décalages de temps de forage, et maintenant ils partagent une cadence. Tirer ensemble est ce que nous allons le coalesce les fait en sorte de les faire s'effondrer en une seule demande; les tiques décalées chacune payée leur propre aller-retour. La minuterie et l'écoute sont créées lorsque le premier abonné arrive et arrachable lorsque les dernières feuilles, donc une surface non authentifiée sans utilisationUserInfo() bras grand public fireSessionRefresh copie l'ensemble d'abonné avant itération, donc un composant un mi-mauvaisage interminable ne peut pas remodeler la collection en dessous. Délibérément PAS : déplacer l'état du crochet lui-même dans un magasin partagé. Cela serait s'effondrer les racines de React sales de 12 sur l'onglet se concentrer jusqu'à une, qui est la plus grande moitié de cette découverte - mais elle restructure le modèle d'état du crochet qui porte les droits et auths sur 194 sites d'appel, et le mode de défaillance est des droits nuls ou erronés, ce qui n'est pas le test ici qu'il s'enlève. Il veut un critique qui peut exercer l'application. Vérifié: tsc --noEmit nettoyez-en-utilisationUserInfo, utilisezSoftphone et AuthedChrome avec leurs les importations en transit; les 10 gardes sont tous passés; 66 essais à travers les crochets, la session et la voip les suites passent.

Tous les changements

Comme ce que tu vois expédier ?

Chacune de ces mises à jour atterrit automatiquement dans votre espace de travail. Commencez gratuitement et regardez-le grandir semaine après semaine.

Commencez gratuitement pour toujoursPrix de visualisation