Quale sarebbe un buon modo per limitare un'applicazione Web ASP.NET a servire solo un determinato numero di utenti simultanei?Come implementare le licenze mobili in ASP.NET?
Alcuni requisiti sono:
- applicazione richiede login (non c'è bisogno di preoccuparsi per gli utenti anonimi).
- Supporto di più server (farm/load balancing).
- Un utente attivo può essere considerato uguale a una sessione attiva (non firmato o scaduto).
- Gli accessi aggiuntivi devono essere negati se è stato raggiunto il numero massimo di utenti simultanei.
- La responsabilità è necessaria (gli amministratori dovrebbero essere in grado di vedere chi sono gli utenti attivi).
- Overhead minimo su ciascuna richiesta Web (in particolare evitando costosi viaggi verso un database per ogni richiesta).
- Il numero totale di utenti concorrenti deve essere mantenuto corretto anche se un server Web si blocca, si disconnette dalla rete o deve essere riavviato.
- Sono disponibili server aggiuntivi per servizi host (ad esempio server applicazioni).
Sembra che questa sia una domanda copia e incolla da una specifica dei requisiti. Cose come "La responsabilità è necessaria" e la limitazione degli utenti concorrenti sono due cose completamente diverse. Penso che dovresti considerare di chiedere solo la domanda specifica qui? – Illuminati
:) In effetti ho appena scritto questo, sono il ragazzo che scrive le specifiche. Intendo dire che qualunque metodo venga applicato dovrebbe essere abbastanza trasparente da consentire agli amministratori di vedere a chi l'applicazione pensa di aver effettuato l'accesso quando viene raggiunto il limite. –
Probabilmente un HttpModule? Molto probabilmente dovrai implementare questa logica negli eventi 'AuthenticateRequest' e' PostAuthenticateRequest'. http://msdn.microsoft.com/en-us/library/ms178473.aspx –