Asincrona in tempo reale con ASP.NET MVC

Modelli di applicazione


La comunicazione in tempo reale sta diventando una necessità nelle applicazioni web che sono attualmente in costruzione, dietro ci sono quei siti che avevano decine di pagine per ogni azione dell'utente, ora tutto ruota intorno alle applicazioni di una singola pagina e alla sua capacità di essere dinamico e asincrono.
Questo ci porta a sviluppare tecniche che ci consentono di adottare ed estrarre informazioni in tempo reale dai dati gestiti nell'applicazione, quindi dobbiamo conoscere le tecniche di base che ci consentono di eseguire questi approcci.
In questa sezione vedremo alcune tecniche per estrarre informazioni in tempo reale, cioè raggiungere uno stato di asincronia senza dipendere dalle azioni dell'utente affinché il server invii i dati al client.
Il modello classico di un'applicazione è quando la nostra pagina attende una risposta dal server, in questo modo rimangono in uno stato sincrono che fa dipendere tutti i nuovi dati dalle azioni che l'utente esegue nel livello client, quindi se vuoi vedere un aggiornamento devi eseguire un'azione che ricarica la pagina.
Modello asincronoL'altro modello è quello dell'asincronia di AJAX dove vengono ricaricate le sezioni della pagina, in questo modo evitiamo di dover ricaricare l'intero documento, tuttavia dipendiamo comunque dal primo evento che è l'utente che esegue qualche azione.
Finalmente possiamo parlare di una vera comunicazione in tempo reale quando le informazioni vengono inviate dal server indipendentemente dalle azioni dell'utente, anche se questo sembra complesso in realtà non lo è, sono semplicemente tecniche diverse che possiamo usare, per questo lo faremo vedi alcuni di quelli che abbiamo a disposizione:
Questa tecnica consiste nel simulare una conversazione tra il client e il server, in questo modo possiamo portare gli aggiornamenti dei dati periodicamente senza interrompere l'utente, dando l'impressione che i dati vengano spinti in tempo reale.
Per ottenere ciò, viene effettuata una combinazione tra le chiamate AJAX e la funzione Timer () di JavascriptCon questo possiamo controllare come e quando verranno ottenuti i dati, lo svantaggio è che sprechiamo risorse poiché se ci sono più richieste rispetto ai dati ottenuti faremo un uso eccessivo del server, il che potrebbe generare problemi di prestazioni.

Questa tecnica, contrariamente alla precedente, non è una simulazione di una conversazione né ci sono chiamate multiple, ma facciamo una sola chiamata ma è molto lunga, cioè è come aprire un rubinetto e mentre l'acqua scorre aspettiamo perché qualcosa cada.
Per questo manteniamo aperta la connessione con il server fino a quando non c'è una risposta, questo è un po' più simile a un tempo reale, tuttavia il problema è che quando la connessione è molto lunga può essere chiusa o forse il client sta accedendo da un location che chiude le connessioni in modo brevissimo, quindi non è molto affidabile, inoltre se apriamo molti thread di questo stile possiamo causare il crash del server.

Abbiamo già visto alcune tecniche di base per creare applicazioni con elementi asincroni in tempo reale e con questo abbiamo anche appreso i loro svantaggi, nella prossima parte vedremo le tecniche avanzate per questo compito.
Precedentepagina 1 di 2ProssimoTi è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo
wave wave wave wave wave