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

    AJAX e quantità dati ritornati

    Ciao,
    sto sviluppando un'applicazione web in ajax-php-mysql con funzioni che scrivono e leggono dal db, il problema che mi pongo è:
    nel caso della lettura in cui una query mi debba ritornare una "grossa" quantità di dati, del tipo un xml di 1MB, ho visto che impegna molto il client nella scrittura della pagina nel momento in cui riceve tali dati.
    Si può ovviare a questo problema ??
    Cambierebbe qualcosa spezzettare il dato in ricezione e farlo scrivere "a rate" ??
    Se esistono già soluzioni o discussioni nel forum me le potreste consigliare che non ne ho trovate di utili x favore ??

    Ciao e grazie
    Il mio futuro ?? Io lo conosco, è il PARTY !! (Party Man)
    ...e ricordati che prima o poi il po-chi gira (Il Maestro)

  2. #2

    Re: AJAX e quantità dati ritornati

    Originariamente inviato da rasega
    ho visto che impegna molto il client nella scrittura della pagina
    tu scrivi nella pagina direttamente XML o lo parsi?
    Se lo parsi, usa XSLT che e' compatibile con tutti i browsers e da secondi passi a una manciata di millisecondi per la trasformazione.
    Do per scontato che i dati ritornati siano passati via gzip cosi' da comprimere 1Mb in un paio di centinaia di Kb altrimenti Ajax perde un po' di significato (dvrebbe essere veloce, se l'utente aspetta "ore" non ha senso)

    Detto questo, di solito se i risultati son tanti si ritorna una struttura capace di inviare e ricevere una paginazione (totale, partida, perpagina)
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #3
    La compressione gzip dovrebbe dipendere dalle impostazioni del server se non sbaglio...e non è detto che io le possa gestire, giusto ??
    Quando il dato è xml viene parsato, altrimenti invio anche puro testo da scrivere nel contenuto della pagina...

    In conclusione oltre alla compressione mi suggerisci spezzettare i risultati mediante una impaginazione dei dati tale da inviarne pochi alla volta (non tutti quelli richiesti) ed inviare i successivi solo su richiesta dell'utente ??

    Sul reference php ho visto che esiste anche questo:
    http://it2.php.net/manual/en/functio...se-setgzip.php
    ma non so cosa sia e se funziona...!!
    E' possibile attivare gzip on-the-fly tramite script ?? Non mi pare ... :master:

    Grazie !!
    Il mio futuro ?? Io lo conosco, è il PARTY !! (Party Man)
    ...e ricordati che prima o poi il po-chi gira (Il Maestro)

  4. #4
    ob_start('ob_gzhandler');
    ed hai in parte risolto
    In parte perchè può stressare il server se ci sono tanti utenti, la compressione è su mega piuttosto che pochi Kb
    ed in parte perchè ti ho già dato la soluzione XSLT, per evitare pareser manuali comunque lenti se confrontati ad una trasformazione via XSLT
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  5. #5
    Scusa l'ignoranza, ma andrebbe chiamata ogni volta che eseguo lo script prima che questo invii il risultato via ajax ?
    Dovrò mettermi a studiare XSLT ...
    Il mio futuro ?? Io lo conosco, è il PARTY !! (Party Man)
    ...e ricordati che prima o poi il po-chi gira (Il Maestro)

  6. #6
    no, prendi l'XML, gli assegni un XSLT, e e rasformi in un nodo

    questo fa altro, ma ha ance un trasformatore XSLT
    http://webreflection.blogspot.com/20...ml-object.html

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    Grazie !!

    Il mio futuro ?? Io lo conosco, è il PARTY !! (Party Man)
    ...e ricordati che prima o poi il po-chi gira (Il Maestro)

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 © 2025 vBulletin Solutions, Inc. All rights reserved.