Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Alta latenza con passaggio dati ajax

    Buongiorno ragazzi.
    Ho creato un gestionale in php/mysql/jquery per la catalogazione di cd con motore di ricerca integrato.
    Mi sono trovato ad avere un piccolo problema di latenza su una ricerca: quella della totalità dei cd.
    La ricerca, una volta inoltrata, ritorna in modo asincrono le informazioni necessarie del cd, copertina compresa che, pensando fosse colpa delle immagini stesse, ho ridotto tutte a thumbnail per max 5kb l'una.
    Considerando che attualmente ci sono 14 cd e il tempo di latenza, come da immagine allegata, varia dai 7 ai 9 secondi, quale può essere il problema?
    Passo troppo codice tramite ajax?
    C'è un conflitto/problema con il codice javascript?
    Davvero non capisco...
    Magari è un tempo normale e anche con 3000 cd (quota prevista) il tempo rimane quello ma dubito...

    Grazie a chiunque darà anche solo uno spunto per capire dove guardare


    p.s. intanto proverò a fare qualche test togliendo parti di codice.. magari capisco cosa rallenta il tutto.
    Immagini allegate Immagini allegate
    Ce l'ho fatta! - ItalianPixel -

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    per prima cosa ti consiglio di verificare quanto sia la durata di elaborazione della parte server side. Ti basta aggiungere due log all'inizio e alla fine del metodo richiamato.

  3. #3
    Lo farò!

    Nel frattempo, come avevo specificato, ho tolto un pò di codice e mi sono accorto che uno script che uso per la valutazione, semplici stelline, ci mettevano una vita e tre quarti a caricare, così ho spostato quel codice in una funzione a parte, richiamabile sempre tramite ajax, una alla volta.

    Il problema riguardava una lista di 10/15 canzoni per cd, che facevano molte stelline da caricare (sempre con questo script) che rallentava incredibilmente il tutto.

    Ora ci mette 600ms a caricare il tutto e le canzoni si possono vedere a parte un cd alla volta.

    Per rimanere in tema, come si può ottimizzare al massimo una chiamata asincrona con ajax? Quali dati è meglio non passare?

    Grazie
    Ce l'ho fatta! - ItalianPixel -

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    gli unici dati da passare sono quelli necessari per far si che l'elaborazione lato server sia compiuta con successo. Se è necessario recuperare piu informazioni da una singola chiamata ajax io raggruppo tutto in un singolo json, preferisco fare un solo accesso lato server e poi smazzarmi tutti i dati lato client che effettuare nmila chiamate ajax. La questione cmq credo sia molto soggettiva, spesso dipende da come è strutturata l'applicazione.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.