APPLICAZIONE WEB LENTA

Buona sera.
Sto creando una WEB APP che si connette ad un database MSSQL.
Fino a tre utenti collegati sembra tutto andare bene.
Nel momento in cui avvio la quarta sessione i tempi di risposta aumentano drasticamente arrivando ad avere dei tempi dell’ordine di 15 secondi per l’apertura di una semplice maschera di imput, senza alcuna query.
Qualcuno sa dirmi come mai?
Vi ringrazio per l’aiuto.

Pu dipendere da diversi fattori.
Ti consiglio di attivare la profilazione del codice in modo da avere un idea di massima di dove rallenta.
Prima fai un run con solo 3 sessioni (che da come dici hanno una velocit normale)
Poi la rifai anche con la quarta (dove dici che rallenta) e confronti i risultati.

Ciao,
cosa intendi per la profilazione del codice ?
Grazie

stesso problema

Per profilazione del codice, intendo avviare una sessione di debug dopo aver attivato dal menu project la voce Profile Code.

Al termine della sessione viene generato un report con il numero e i tempi di ogni singolo metodo chiamato.
Tramite questo puoi verificare dove il tuo programma rallenta e decidere se intervenire o meno (ad esempio se un metodo lento ma chiamato solo una volta magari non cos importante come uno un po’ pi veloce come esecuzione singola ma chiamato 1000 volte)

Bello,
nei metodi da controllare devi mettere qualche istruzione, oppure lui fa il log di tutti i metodi.
Posso decidere di controllare un determinato metodo ?
Grazie

Fa tutto lui e per tutti i metodi, per cui se uno ha una dialog per aprire un file e dopo nel report vedi che lenta, in realt sono i tuoi tempi di reazione :slight_smile:

Se vuoi farlo per un singolo metodo lo puoi fare a mano mettendo all’inizio del metodo:

#if DebugBuild dim methodTime as Double=Microseconds #Endif

e alla fine:

#if DebugBuild System.debuglog CurrentMethodName+":"+CType(Microseconds -methodTime, single).toText #Endif

Nella sezione dei messaggi di Xojo avrai il log delle singole chiamate in microsecondi.
Tieni conto per che se il tuo metodo non esce alla fine non avrai questo valore… mentre con la profilazione si.

Perfetto e chiarissimo.