Instant Developer

Tips&Tricks Instant Developer Foundation: la sincronizzazione più veloce del west

Tempo di lettura | 26 Marzo 2013 | Giuseppe Lanzi
speedy Instant Developer

L’esperienza utente è la caratteristica più importante di un’app di successo. Essa viene percepita come buona quando è funzionale, semplice e veloce. Per quanto riguarda la velocità, c’è un trucchetto che voglio suggerirvi per ottimizzare la sincronizzazione dati fra app mobile e server centrale.

Senza alcuna operazione aggiuntiva, il framework di Instant Developer riduce al minimo la quantità di dati scambiati con il server, operando in modo differenziale e parzializzato. L’unico caso in cui si può dover aspettare è durante la prima sincronizzazione, quando il database del dispositivo è completamente vuoto e va popolato da zero. Ci sono 500.000 oggetti da sincronizzare? Allora il dispositivo riceverà dal server un XML con 500.000 nodi e per altrettante volte effettuerà gli inserimenti su SQLite.

In questo caso è possibile usare un metodo più rapido: invece di trasferire ogni singolo oggetto, durante la prima sincronizzazione è possibile farsi restituire dal server l’intero database in un unico file, da ripristinare sul dispositivo in un colpo solo. I passi dell’operazione sono questi:

  1. il dispositivo mobile svuota tutte le tabelle del database SQLite e poi ne effettua il backup su file con il metodo BackupDB;
  2. il dispositivo invia il file al server di sincronizzazione con UploadFile;
  3. il server effettua il restore del database vuoto con RestoreDB e lo popola con i dati che devono arrivare all’utente tramite le opportune query;
  4. il server esegue nuovamente il backup su file e risponde al dispositivo;
  5. il dispositivo mobile scarica il file contenente il database appena popolato ed esegue il restore.

E il gioco è fatto. Per darvi un’idea, nei casi in cui l’abbiamo usato questo metodo è risultato 10 volte più veloce di quello automatico.

So che molti di voi stanno pensando “facile a dirlo, ma come faccio a farlo?” ed è proprio questo che ho preparato un progetto di esempio per mostrarvi come fare.

Buon lavoro 🙂

Giuseppe Lanzi
Technical Support Manager
Mi occupo di assistenza e consulenza tecnica, dei corsi di formazione e dei sistemi rivolti ai clienti. Amo la tecnologia e ogni tipo di nuovo gadget, mi interesso di fotografia e prendo al volo ogni occasione di scoprire un nuovo gioco.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *


Potrebbe interessarti

Instant Developer e PayPal: l’integrazione in 3 passaggi

Nella realizzazione di applicazioni web B2C per la vendita di prodotti e servizi verso gli utenti finali è sempre necessario integrare uno o più sistemi...

Leggi Tutto

Comunicazione Backend–Frontend efficace: Una Guida con Instant Developer

In un mondo dove le applicazioni diventano sempre più complesse, rendere efficace la comunicazione backend - frontend è più che mai fondamentale. Instant Developer non...

Leggi Tutto

Un nuovo compagno di viaggio: spazio ai device, spazio alle idee!

Nel cuore della nostra azienda, c'è la convinzione che i migliori strumenti potenzino i migliori talenti. Ecco perché il team di Instant Developer ha ricevuto...

Leggi Tutto

Rimani Aggiornato

Iscriviti alla nostra newsletter per ricevere aggiornamenti su novità, eventi, release, webinar e tante altre notizie sui prodotti Instant Developer.

    Presa visione dell'informativa (disponibile qui) resa da Pro Gamma SpA, acconsento al trattamento dei miei dati personali per l'invio di newsletter.*