Domanda

Attualmente sto utilizzando le variabili di sessione come cache per ridurre le chiamate al database.

Mi chiedo a quanti utenti simultanei smette di funzionare? 1.000, 10.000 .... 100.000 ??? Inoltre inizierò a sfaldarsi a un certo carico? E ci sono qualche alternativa?

So che dipende dalla quantità di dati che sto archiviando per utente, ma voglio sentire le esperienze di altre persone.

L'ho installato in modo tale che quando il codice tenta di accedere a una sessione scaduta si ricarichi dal database.

Attualmente sto usando iis6 ma potrei facilmente usare iis7 se gestisce meglio le sessioni.

Modifica: Sì, sto usando le variabili dell'applicazione per dati non specifici dell'utente.

È stato utile?

Soluzione

Probabilmente dovresti guardare Memcached se arriverai a questo punto.

Altri suggerimenti

Se questo ti preoccupa, usa un State Server o il SQL Storage opzioni per la sessione. Per quasi tutte le applicazioni, tuttavia, non si rivelerà un problema.

Se hai più di 124.889 utenti, il tuo server inizierà a non rispondere.

Modifica: se i tuoi dati non cambiano e possono essere riutilizzati, prova a memorizzarli nella cache in una variabile con ambito applicativo, ovvero i dati di riferimento.

È molto improbabile che la capacità della variabile di sessione sia mai la risorsa limitante per il tuo server. Qualche motivo particolare che stai chiedendo?

Che ne dici di usare la Cache invece, consente l'invalidazione automatica della cache.

L'annullamento della cache può essere eseguito sia in base a un timeout sia perché "eliminato" " a causa di risorse.

È possibile utilizzare la cache per utente assegnando a ciascun elemento una chiave specifica dell'utente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top