Demandez plus tôt, demandez une fois, et arrêtez de demander ce qui n'a pas changé

Performancekamo-internal
Expédié
14 août 2026 à 02:25 UTC
Auteur
kamo
Commite
fd3f86d

Trois autres choses entre l'ouverture/les messages et le courrier. Rien n'a été demandé tant que le paquet n'avait atterri. /mesages tire plusieurs mégaoctets de JavaScript, et le composant qui sait comment demander du courrier le fait n'existent pas jusqu'à ce que tout cela soit arrivé et analysé - donc la première demande a quitté le le navigateur seulement après que le dernier octet a été traité. La route est maintenant un serveur composant dont le premier enfant est un petit module client qui ne fait rien d'autre que demander pour l'arborescence de dossiers et la première page; il atterrit dans son propre morceau et court tandis que le client de courrier est toujours en train de télécharger. Quiconque a besoin des données joint à la demande déjà en vol, donc il reste une demande. Il doit s'agir d'un module client même si un serveur peut démarrer plus tôt, et La raison en est le modèle de session de cette application. kamo-internal conserve sa session par onglet en sessionStorage et l'envoie sous forme de X-z-Token; le biscuit est planté uniquement par l'itinéraire de l'extension de la session, de sorte qu'il est absent pour un membre qui vient de se connecter et appartient à un membre différent pour quelqu'un avec deux onglets ouverts comme deux comptes. Un serveur rend des cookies et rien d'autre. Retrouver du courrier là-bas irait carrément à l'égard d'une nouvelle connexion et, sur un deuxième onglet, pourrait mettre un membre dans la boîte de réception sur l'écran d'un autre membre. Pas une seule importation dynamique n'existait dans l'arbre des messages, donc la recherche avancée panneau, le sélecteur d'étiquettes, la surcouche de raccourci, le dialogue de confirmation, les menus contextuels, le commutateur de boîte aux lettres et le désinfectant HTML derrière la lecture La vitre était dans la première partie. Aucun d'entre eux n'est nécessaire pour présenter une boîte de réception; ils se chargent maintenant lorsque le membre tend la main pour eux. Fournisseur et boîte aux lettres-accessibilité répond - les deux résultats de chaque page load attend avant qu'il puisse montrer n'importe quoi - sont mis en cachet dans Redis pendant une minute et demie une minute respectivement, marquée par session et abandonnée par n'importe quelle écriture qui pourrait les modifier. Sessionuée et rien de plus large: un cache sur une autorisation la réponse est le type qui divulgue l'accès d'une personne à une autre si la clé est trop large, et la session est avec quoi la demande a été authentifiée lors de la première place. Le coalescing est testé à partir de la direction qui compte - qu'il maintient une demande lorsque deux appelants veulent la même page, qu'il ne fusionne jamais deux boîtes aux lettres ou deux les dossiers, et qu'il ne devient pas tranquillement une cache et ne gèle pas les comptes non lu la barre latérale recharge spécifiquement pour rafraîchir.

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