- Spegnimento
- 26 agosto 2026 alle ore 02:30 UTC
- Autore
- kamo
- Impegno
- c36c532
getRequestConfig corre per richiesta, e per qualsiasi membro non inglese chiamato mergeWithFallback su tutto il catalogo 23,252-chiave ogni volta — ricostruire un risultato che non può cambiare fino alla prossima distribuzione. Misurato su una CPU desktop: 8-25 ms a seconda sul locale, ~16 ms in media, di lavoro single-threaded seduto davanti risposta. Un pod è più lento di un desktop, e questo atterra su TTFB per ogni pagina di carico da ogni membro che non legge l'inglese. Cached per locale per la vita del processo. Il sentiero inglese è intoccato — esso già restituito il catalogo base senza fusione. Due cose lo rendono più economico di quanto sembri. È delimitato da costruzione: èLocale() porta la chiave prima che raggiunga la mappa, quindi c'è al massimo una voce per supportato locale, 21 di loro. E un catalogo cache è per lo più gratuito — unisciti alle copie di Fallback string REFERENCEs piuttosto che stringhe, quindi ciò che viene mantenuto è una colonna vertebrale dell'oggetto sopra stringa la cache di importazione già detiene. Sei copie unite non sono state distinguibili zero in una misura di mucchio attraverso processi separati. Anche il fallback inglese per un file locale mancante viene memorizzato in cache, deliberatamente. Locale file spediscono all'interno dell'immagine, quindi uno che è assente alla prima richiesta è assente per tutta la vita del processo; rileggere il fallimento per richiesta non ha comprato nulla. Sicuro di condividere perché nulla lo muta: l'unico consumatore di getMessages() è app/layout.tsx, che lo legge e lo consegna a NextIntlClientProvider. Verificato: tsc --noEmit clean over i18n/ e app/layout.tsx con le loro importazioni transitive.