Access lento su LAN

di il
2 risposte

Access lento su LAN

Buongiorno,
vi racconto la mia esperienza sperando che possa essere di aiuto e che qualcuno possa darmi spiegazioni/soluzioni alternative.
La mia situazione è un Db Access(2019) diviso in FE e BE con Be linkato su un percorso di rete UNC. L'ambiente è multiutente con 2-3 accessi contemporanei.
Da settimane stavo sperimentando una lentezza insostenibile anche come unico utente da una sola postazione:
apertura maschera in visualizzazione dati 18s
dlookup 27s
...
dopo aver sbattuto la testa per giorni mi sono imbattuto in alcuni post su internet che consigliavano di mantenere una connessione aperta al db per migliorare le prestazioni in ambiente multiutente forzando la permanenza del file di blocco .laccdb.

Anche se scettico, sul form_load di una maschera nascosta caricata all'apertura del db, ho inserito il codice

set rs = CurrentDb.OpenRecordset(TebellaQualsiasi, dbOpenSnapshot, dbReadOnly)
così com'è, senza chiudere come da prassi.
Incredibilmente tutto è tornato nella norma con tempi di esecuzione del codice, connection.open, dlookup ecc di frazioni di secondo.

Perplesso ma sollevato vi saluto

Andrea

2 Risposte

  • Re: Access lento su LAN

    Beh se qualcuno lo suggerisce magari proprio "stupida" l'idea potrebbe non esserlo... che dici...?
    Avevo pubblicato un esempio con tanto di verifica dei Tempi di ottimizzazione su questa cosa... giusto per non obbligare il lettore a fidarsi, ma a verificare oggettivamente, purtroppo il sito di Masterdrive su cui era pubblicato non esiste più, ma scaricabile da questo sito:

    http://www.accessgroup.it/forms/test-velocita-dcount-vs-recordset.html

    Nel demo, da seguire le istruzioni, c'è una checkbox da osservare nella Form "Prestazioni" con Caption [Tabella Pilota Aperta(Ottimizza LinkedTable)] fa esattamente quello che hai letto...!

    La spiegazione in ogni caso è data dall'accesso al POOL delle connessioni, se già esistente o se da creare...
  • Re: Access lento su LAN

    Non ho mai pensato che l'idea fosse stupida solo non mi aspettavo un risultato così importante.
    Ho testato la tua demo e questi sono i risultati sul pc principale.
    Non so perchè ma da altre postazioni, se non lascio aperta una connessione, le prestazioni degradano così tanto, da millisecondi a decine di secondi.

    In ogni caso la demo è molto interessante e penso di copiarti la funzione HiResTimer

    Ciao
    Andrea
    Allegati:
    30452_e75c81ae3aff34c2e8edc8d7fb46dede.jpg
    30452_e75c81ae3aff34c2e8edc8d7fb46dede.jpg
Devi accedere o registrarti per scrivere nel forum
2 risposte