Ci sono tre approcci che potresti usare:
Pre-load
Carica immediatamente tutti i file locali. Tutte le informazioni locali vengono quindi conservate in memoria e non richiedono ulteriori caricamenti in fase di runtime.
Vantaggio: veloce. Soffri un avvio leggermente peggiore in cambio di avere tempi di caricamento imbattibili ogni volta che ne hai bisogno.
Svantaggio: utilizzo della memoria. A seconda del numero di locali che intendi supportare, questo potrebbe non essere l'ideale. Se l'utente non cambia spesso le impostazioni locali (cosa che mi aspetterei), allora subisci la penalità di utilizzo della memoria senza i vantaggi.
Lazy-load
Carica i file locali solo quando necessario. Se si pensa che potrebbe essere necessario il file locale all'avvio, caricare una locale predefinita. Utilizzare una mappa / dizionario per tenere traccia di quale utente sta usando quale locale e di avere una sola copia caricata per locale attivo. Quando l'utente si disconnette, se nessun altro utente utilizza quella locale, è possibile scegliere di abbandonarlo o meno, a seconda dell'importanza della memoria.
Vantaggio: utilizzo della memoria insufficiente.
Svantaggio: lievi ritardi di caricamento quando viene richiesta la localizzazione non caricata.
Dinamico
Per ogni richiesta data dall'utente, carica una volta usando la locale attiva. Eventuali modifiche sono immediatamente evidenti e non richiedono il ricaricamento esplicito.
Vantaggio: le modifiche sono immediate. Il più veloce da implementare. Memoria minima.
Svantaggio : ritardi di carico elevati. Se i tempi di caricamento sono abbastanza bassi, questo potrebbe non essere un grosso problema per te.
Conclusione
Se noterai, c'è una sorta di scala qui. Il compromesso è velocità / memoria e mentre ci si sposta dall'alto verso il basso, si migliora e si peggiora l'altro. Qual è il migliore? Dipende da cosa vuoi ottimizzare. Se vuoi velocità, precarica. Se vuoi memoria, rendila dinamica. Se entrambi hanno la stessa importanza, considera il caricamento lento come il meglio di entrambi i mondi a mio modesto parere.