come posso ridurre al minimo le mie chiamate ajax al server durante la creazione di un dashboard

1

Voglio creare un dashboard per il mio sito web. Ho diviso la mia dashboard in diversi moduli. A quanto ho capito, dovrò fare molte chiamate AJAX.

I diversi moduli sono:

  1. numero totale di visite alle pagine che cambiano in tempo reale
  2. tasso di accettazione
  3. tasso di rifiuto, ecc.

La domanda che sto affrontando è: come posso ridurre al minimo le mie chiamate AJAX e c'è qualche ordine in cui devo inserire le mie chiamate AJAX mentre carico la pagina in modo da ottenere una quantità minima di tempo di caricamento?

    
posta AJAY 19.11.2014 - 18:48
fonte

1 risposta

3

È possibile creare livelli di aggregazione / de-aggregazione API su entrambe le estremità.

Sul lato client, puoi creare un layer che riceve richieste API e "detiene" per N ms per vedere se arrivano fino a M altre richieste. È necessario aggregarle in qualsiasi formato funzioni per te prima di inviarlo. La risposta aggregata in qualsiasi formato è utile per te dovrà essere divisa da un livello client controparte e i callback per ogni singola richiesta saranno problemi da lì.

Sul lato server, è sufficiente il corrispondente livello di de-aggregazione / riaggregazione. Inizialmente, si può ancora elaborare la richiesta in modo sequenziale a thread singolo. E questo potrebbe anche migliorare le prestazioni. Inoltre, le richieste di aggregazione e "de-aggregazione" non devono essere terribilmente complicate. È sufficiente creare una serie di richieste e utilizzare un formato di serializzazione comune (JSON) per il trasporto.

Ho ottenuto alcuni risultati favorevoli con un'implementazione piuttosto semplice di questo su un sito a basso traffico . (Ancora per vedere come scala!)

Tuttavia, potresti non notare alcun miglioramento - potresti trovarlo, nel tuo caso , inviando N richieste AJAX asincrone e simultanee al client -side è in realtà l'opzione più performante. Il sovraccarico di attesa, aggregazione (due volte) e "de-aggregazione" (due volte) potrebbe essere più che semplicemente l'emissione di più richieste, presumibilmente a condizione che tali richieste non siano forzate per l'esecuzione in sequenza.

    
risposta data 19.11.2014 - 19:22
fonte

Leggi altre domande sui tag