Gestionale lento: come capire la causa prima di spendere soldi

Un gestionale lento può dipendere da quattro cose: il server, la rete, il database o il programma stesso. Comprare un computer più potente è la reazione più comune, ma non serve se il problema è una ricerca scritta male o un database mai curato. Prima di spendere, va capito dove si perde il tempo, e alcune verifiche puoi farle con poche domande.

Una lentezza che nessuno misura ha un costo vero: ogni giorno le persone aspettano, si interrompono e trovano scorciatoie. La buona notizia è che spesso la causa è una sola e, una volta trovata, si può correggere senza stravolgere nulla.

Le domande che restringono il campo

Prima di chiamare un tecnico, raccogli queste informazioni. Spesso bastano da sole a indicare la direzione.

DomandaSe la risposta è sì, guarda qui
È lento per tutti, in ogni operazione?Server, rete o database in generale
È lento solo in certe schermate o report?Programma o singole ricerche
È lento solo in certi orari?Backup, elaborazioni notturne o troppi utenti insieme
È lento solo per alcune persone o sedi?PC o connessione di quelle persone
Peggiora nel tempo, poco alla volta?Crescita dei dati e mancanza di manutenzione
È iniziato all’improvviso, da una certa data?Un cambiamento: aggiornamento, nuovo antivirus, nuova rete
Si blocca solo quando lavorano in molti?Blocchi tra utenti sugli stessi dati

L’ultima colonna è una pista, non una diagnosi. Ma evita di partire da una soluzione a caso.

Le cause più frequenti

Il database non viene curato

Un database ha bisogno di manutenzione periodica, come la ricostruzione degli indici e l’aggiornamento delle statistiche che usa per scegliere come cercare i dati. Se nessuno se ne è mai occupato, il rallentamento arriva piano, e ci si abitua. Tra le cause è una delle più economiche da risolvere: chiedi al tuo tecnico se è previsto un piano di manutenzione e quando è stato eseguito l’ultima volta.

Ricerche e report scritti male

Una singola ricerca, o un report che legge tutto il magazzino per mostrare poche righe, può rallentare anche il lavoro degli altri. Di solito il segnale è che “quando parte quel report, si ferma tutto”. Qui l’hardware serve a poco: va corretta la ricerca. Il tecnico ha strumenti per individuare quali sono le operazioni più lente.

Utenti che si bloccano a vicenda

Quando più persone modificano gli stessi dati, il database può mettere qualcuno in attesa. Se una stampa o un’elaborazione lunga tiene occupate molte righe, tutti gli altri aspettano. Da fuori sembra che “il server è lento”, mentre i processori sono quasi fermi.

Risorse del server

A volte il problema è proprio questo: poca memoria, o dischi tradizionali dove serve un’unità SSD. Il tecnico può verificarlo osservando il carico durante le ore di lavoro, non la sera quando tutto è calmo. Se il server è molto vecchio, considera anche il tema del supporto di sistema operativo e database.

Un programma pensato per la rete locale

Molti programmi desktop continuano a scambiare dati con il database a ogni operazione. Funzionano bene in ufficio, ma diventano lentissimi su una rete meno veloce, tra due sedi o da casa. È anche il motivo per cui spostare solo il database nel cloud può peggiorare la situazione: ne parliamo in migrare il server aziendale in cloud.

File condivisi in rete

Con strumenti basati su file condivisi, come Access o FoxPro, ogni PC legge i dati attraverso la rete. Più il file cresce, più diventa lento. Il rimedio è passare a un database vero: vedi come migrare un database Access al cloud.

Antivirus e backup

Un antivirus che controlla ogni accesso ai file del database, o un backup che parte in orario di lavoro, possono rallentare molto. Sono cause semplici e spesso trascurate.

Come misurare, senza strumenti particolari

Il modo più utile per iniziare è sorprendentemente semplice. Scegli le 5 operazioni che ti danno più fastidio, poi prendi il tempo con un cronometro per una settimana, in momenti diversi della giornata e dalle postazioni di persone diverse.

OperazioneOre 9Ore 12Ore 17Note
Apertura scheda cliente
Salvataggio di un ordine
Ricerca articolo
Report di fine giornata

Questa tabella ti darà tre cose: una descrizione del problema che un tecnico può usare, un riferimento per capire se un intervento è servito, e una stima del tempo perso in azienda. Per quest’ultima basta moltiplicare i secondi di attesa per il numero di operazioni al giorno. Il risultato spesso sorprende.

Cosa provare, dal meno costoso

  1. Controlla orari di backup e altre elaborazioni, poi spostali fuori dall’orario di lavoro.
  2. Avvia la manutenzione del database, se manca.
  3. Controlla gli antivirus, escludendo le cartelle del database secondo le indicazioni del produttore.
  4. Individua le ricerche e i report più lenti e correggili.
  5. Pulisci i dati vecchi, se il programma lo permette: non cancellarli, ma archiviali.
  6. Aggiorna il programma, se è disponibile una versione più recente.
  7. Solo a questo punto, valuta l’hardware: memoria e dischi veloci possono fare molto, se il problema è lì.

Quando la lentezza è un sintomo più grande

Ci sono casi in cui puoi migliorare un po', ma non risolvere: il programma non è stato progettato per il volume attuale di dati, ogni correzione ne rompe un’altra, oppure non c’è nessuno che possa intervenire sul codice. Questo è il debito tecnico che si fa sentire.

Se ti trovi qui, non significa dover rifare tutto. Puoi sostituire per prima la parte più lenta, lasciando il resto al suo posto: è il metodo descritto nella guida alla modernizzazione del software legacy. Per capire cosa succede davvero, un audit del software mette in fila cause e priorità.

Domande frequenti

Comprare un server più potente risolve?

Solo se il limite è il server. Se la causa è una ricerca inefficiente o un blocco tra utenti, spesso il miglioramento è piccolo e dura poco. Chiedi sempre una misurazione prima di acquistare.

È colpa della rete?

Puoi farti un’idea collegando un PC direttamente al server, o provando dalla stanza del server. Se così è veloce, il problema è probabilmente nella rete o nel modo in cui il programma la usa.

Nel cloud sarebbe più veloce?

Non per forza. Un’applicazione progettata per il web può esserlo, ma un vecchio programma desktop con il database nel cloud può diventare più lento di prima.