2009-02-14 13 views

risposta

6

Generalmente, si chiede "Come sapere chi è stato attivo negli ultimi x minuti".

Registrare l'ultima ora di attività su ogni voce di pagina, quindi interrogare quell'elenco per vedere chi è stato attivo negli ultimi due minuti. Potresti estenderlo e registrare l'ultima pagina visitata, sapere quante persone sono online e quante persone si trovano su una pagina specifica.

Si potrebbe fare aggiungendo solo un paio di campi alla tabella utente nel database. Uno per lastActivityTime e uno per lastVisitedLocation.

1

è possibile utilizzare le sessioni di database e quindi utilizzarlo per tenere traccia degli utenti registrati, una volta di iniziare a usare le sessioni di database di rilevamento diventa facile,

non di utenti on-line sarà solo il conto dei record nella tabella

e dal momento che si avranno i record per ogni utente connesso nella tabella delle sessioni, sarà possibile ottenere anche i nomi degli utenti registrati.

2

il problema principale che si ha con gli utenti registrati è che non esiste un modo garantito per garantire che il numero sia accurato, se qualcuno chiude il browser o lo uccide, o perde potenza, l'unico modo che si ha di sapere che non sono loggati, è quando la loro sessione scade, quindi, per impostazione predefinita, sono 20 minuti ... non mi interessa l'idea di mantenere queste informazioni in un database, sebbene sia valido, lo stesso problema rimane, tutto puoi mostrare con precisione il numero di sessioni che asp.net pensa siano attive, non necessariamente il numero di utenti che stanno ancora utilizzando il tuo sito. La risposta di Jonathans è il miglior compromesso poiché è una misura puntuale piuttosto che una cifra garantita.

Problemi correlati