Caricamento dati rallentato

Ponete in questo forum le richieste di aiuto per Eleonline

Moderatore: roby

stefanobruscoli
Newbie
Newbie
Messaggi: 33
Iscritto il: mer apr 16, 2014 1:17 pm

Caricamento dati rallentato

Messaggio da stefanobruscoli »

Salve
abbiamo il problema di una estrema lentezza del caricamento dati. Elezioni Comunali, caricamento preferenze. Abbiamo 22 liste con 32 consiglieri.
Quando per una lista abbiamo caricato le preferenze e diamo l'ok il tempo di attesa per avere il dato caricato è anche di 30 secondi e oltre, anche per cambiare da una lista all'altra il tempo è molto lungo.
Il DB è di circa 4 Mb, la macchina virtuale non sembrerebbe avere particolare carico e le risorse dedicate sono buone, 2 CPU e 4 Gb di ram.
Cosa può essere?

Le altre funzioni di utilizzo del software sono assolutamente normali.
ing. Stefano Bruscoli
Dirigente Comune di Cattolica
stefanobruscoli
Newbie
Newbie
Messaggi: 33
Iscritto il: mer apr 16, 2014 1:17 pm

Re: Caricamento dati rallentato

Messaggio da stefanobruscoli »

Provo a ipotizzare la causa del problema:
abbiamo la sensazione che prima della colorazione di verde delle liste che hanno completato il caricamento delle preferenze il sistema rispondeva bene (quindi prima della reev215). Dopo questa modifica il caricamento è andato appesantendosi sempre di più.
Anche la chiamata della singola sezione richiede lunghe attese.
Forse la pagina di gestione dello spogli, venendo colorate le sezioni e le liste dinamicamente, nel caso di molte liste e molte sezioni, la query che genera la pagina deve leggere ingenti quantità di dati su db e ciò provoca rallentamento.
Proverò su una macchina di sviluppo a tornare ad una rev prima della 214 e vi farò sapere.
ing. Stefano Bruscoli
Dirigente Comune di Cattolica
stefanobruscoli
Newbie
Newbie
Messaggi: 33
Iscritto il: mer apr 16, 2014 1:17 pm

Re: Caricamento dati rallentato

Messaggio da stefanobruscoli »

Confermo la diagnosi.
Ho installato la rev214, nella quale si coloravano di verde solo i numeri delle sezioni. Ora la velocità di caricamento delle preferenze è decisamente migliorata. Forse sarebbe il caso di pensare che i dati della colorazione delle sezioni e anche delle liste (utilissima!!) potrebbe essere gestita leggendo dei dati da una tabella.
Speriamo in una soluzione perché questo problema compromette seriamente l'uso del software nel nostro caso, con il numero di sezioni, liste e candidati specificato.
Grazie di tutto.
ing. Stefano Bruscoli
Dirigente Comune di Cattolica
margottid
Newbie
Newbie
Messaggi: 193
Iscritto il: mar mag 12, 2009 12:00 am

Re: Caricamento dati rallentato

Messaggio da margottid »

Ho constatato anch'io il rallentamento.

In un Comune con 35 sezioni, 8 Candidati Sindaco e 14 Liste (per un totale di 307 Consiglieri), ad ogni click della "Gestione Spoglio" ("Affluenze", "Candidato Sindaco", "Lista", nonché le singole liste per inserire le preferenze) vengono eseguite poco più di 3.000 query, e la finestra completa appare dopo circa 2 secondi (ovviamente dipende dalla potenza del server).
Questi sono i dati al termine dello spoglio, perché a consultazione vuota (ovvero all'inizio, quando devono ancora essere inserite le prime affluenze) cliccando su "Gestione Spoglio" vengono eseguite solo 180 query.

Nei Comuni più piccoli (sia in termini di sezioni, sia di Candidati / Liste) non si notano rallentamenti apprezzabili: il numero delle query è molto più ridotto, e il sistema risponde praticamente in tempo reale.

Capisco che questo sia il prezzo da pagare per la funzione di colorazione delle sezioni e delle liste (anch'io la ritengo utilissima), ma per velocizzare il programma si potrebbe utilizzare una tabella d'appoggio, o anche solo un campo nelle due tabelle _ele_voti_lista e _ele_sezioni che venga aggiornato a TRUE o FALSE in base ai dati confermati durante lo spoglio per quella lista e per quella sezione.
In questo modo, quando si apre la pagina "Gestione Spoglio", le sezioni vengono colorate di verde, di grigio o di rosso semplicemente leggendo il campo da _ele_sezioni, mentre per la sezione corrente viene fatta la lettura anche dalla tabella _ele_voti_lista per colorare di verde, di bianco o di rosso le singole liste.

C'è però da dire che il calcolo eseguito ad ogni click consente di cambiare al volo i parametri alla consultazione (ad esempio, il numero di preferenze esprimibili) e vedere subito il risultato, senza "ricalcolare" tutte le sezioni e le singole liste, per non parlare poi delle vecchie consultazioni (bisognerebbe avere una funzione che ricalcola tutto il pregresso).

Bisogna pensarci su. :wink:

   Daniele
roby
Site Admin
Site Admin
Messaggi: 1260
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: Caricamento dati rallentato

Messaggio da roby »

Controllo anche io nei prossimi giorni. Grazie della segnalazione.
n_daniele
Newbie
Newbie
Messaggi: 324
Iscritto il: lun mag 23, 2011 10:33 pm

Re: Caricamento dati rallentato

Messaggio da n_daniele »

Confermo il rallentamento nelle fasi di caricamento spoglio, progressivo relativamente alla maggiore quantità di dati via via inseriti.
Comunque eleonline che abbiamo usato questa volta é senz'altro più ricco di segnalazioni all'operatore con avvisi, controlli e parti che si colorano: sono tutte cose utilissime per una gestione sempre oculata dello spoglio.
Un ringraziamento vivissimo a Roby, nostro angelo custode, e a tutti i colleghi che con la loro professionalità concorrono a migliorare questo prezioso strumento di lavoro. Ora é solo la lentezza di certi Presidenti di seggio che intralcia il flusso delle informazioni perché gli operatori comunali, addetti agli uffici elettorali, con "eleonline" hanno senz'altro una "marcia in più".
Con riconoscenza.
Natalino
fzago73
Newbie
Newbie
Messaggi: 25
Iscritto il: lun mag 09, 2011 11:53 am

Re: Caricamento dati rallentato

Messaggio da fzago73 »

n_daniele ha scritto:Confermo il rallentamento nelle fasi di caricamento spoglio, progressivo relativamente alla maggiore quantità di dati via via inseriti.
Comunque eleonline che abbiamo usato questa volta é senz'altro più ricco di segnalazioni all'operatore con avvisi, controlli e parti che si colorano: sono tutte cose utilissime per una gestione sempre oculata dello spoglio.
Un ringraziamento vivissimo a Roby, nostro angelo custode, e a tutti i colleghi che con la loro professionalità concorrono a migliorare questo prezioso strumento di lavoro. Ora é solo la lentezza di certi Presidenti di seggio che intralcia il flusso delle informazioni perché gli operatori comunali, addetti agli uffici elettorali, con "eleonline" hanno senz'altro una "marcia in più".
Con riconoscenza.
Natalino
Mi accodo - oltre che per rinnovare i ringraziamenti - alla segnalazione del fatto che a un certo punto del caricamento delle preferenze (Europee) abbiamo notato un degrado delle performance.
Ipotizzo tuttavia che si possa anche trattare del numero di connessioni aperte sul web server dovuto al traffico dei visitatori oltre che degli operatori.
Noi abbiamo lavorato con 56 sezioni: comunque le performance sono rimaste accettabili fino alla fine delle attività.

Saluti a tutti.
Nicolò
stefanobruscoli
Newbie
Newbie
Messaggi: 33
Iscritto il: mer apr 16, 2014 1:17 pm

Re: Caricamento dati rallentato

Messaggio da stefanobruscoli »

Abbiamo provato questa mattina la rev 224.
Caricamento dati velocissimo!!!!!
Direi che il problema è risolto.

Ancora grazie mille di tutto.

p.s. a titolo di curiosità mi piacerebbe sapere (ho poco tempo in questo periodo per scorrere il codice!) la logica dei valori della nuova tabella epe_controllosez
ing. Stefano Bruscoli
Dirigente Comune di Cattolica
roby
Site Admin
Site Admin
Messaggi: 1260
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: Caricamento dati rallentato

Messaggio da roby »

Ogni record mantiene il controllo di una sezione, i campi contengono il risultato dei vari controlli (ancora da terminare). Non viene più rifatto il controllo ad ogni caricamento di pagina ma si interroga la tabella dei controlli. Quando si registra un inserimento o una modifica dei dati viene cancellato il controllo di quella singola sezione, controllo che viene ricreato nel ricaricare la pagina, ma così se ne rifa solo uno quindi le prestazioni sono indipendenti dal numero di sezioni.
roby
Site Admin
Site Admin
Messaggi: 1260
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: Caricamento dati rallentato

Messaggio da roby »

Ho finito l'implementazione del nuovo metodo di controllo per la congruenza dei dati, l'ho impostato in modo che ogni rilevazione abbia un suo colore e si veda subito quali sezioni mancano per l'inserimento in corso, comunque l'ultimo è sempre il verde.
Per chi ha tempo di provarlo allego il file ele_voti.php da mettere in admin/modules/Elezioni e qui sotto il nuovo codice sql per la tabella soraldo_ele_controllosez (ho aggiunto un campo rispetto alla precedente). Lascio il "IF NOT EXISTS" ma è meglio toglierlo e far ricreare i controlli, il campo status viene utilizzato per stabilire se gli inserimenti sono conclusi, e se non si ricrea tutto non si avrà il verde nelle caselle.

CREATE TABLE IF NOT EXISTS `soraldo_ele_controllosez` (
`id_sez` int(11) NOT NULL DEFAULT '0',
`id_cons` int(11) DEFAULT NULL,
`stato_aff` int(1) DEFAULT NULL,
`stato_val` int(1) DEFAULT NULL,
`stato_gru` int(1) DEFAULT NULL,
`stato_lis` int(1) DEFAULT NULL,
`stato_can` int(1) DEFAULT NULL,
`status` int(1) DEFAULT '0',
PRIMARY KEY (`id_sez`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

alter table `soraldo_ele_controllosez` add column status int(1) default '0';
Allegati
ele_voti.php.zip
(16.38 KiB) Scaricato 48 volte
stefanobruscoli
Newbie
Newbie
Messaggi: 33
Iscritto il: mer apr 16, 2014 1:17 pm

Re: Caricamento dati rallentato

Messaggio da stefanobruscoli »

Ok grazie
Domani mattina sarà la prima cosa che farò.
Grazie mille.
ing. Stefano Bruscoli
Dirigente Comune di Cattolica
stefanobruscoli
Newbie
Newbie
Messaggi: 33
Iscritto il: mer apr 16, 2014 1:17 pm

Re: Caricamento dati rallentato

Messaggio da stefanobruscoli »

Prova effettuata. Le prestazioni ora sono ottime, praticamente risposta immediata.
Segnalo solo un'anomalia: nelle europee se ho dei voti contestati la sezione appare con colore rosso, se tolgo il voto contestato, ad esempio mettendolo fra le bianche, la sezione torna verde. Non si ha lo stesso comportamento per le Comunali dove anche in presenza di un voto contestato la sezione diventa verde quando il caricamento dati è completo.
ing. Stefano Bruscoli
Dirigente Comune di Cattolica
margottid
Newbie
Newbie
Messaggi: 193
Iscritto il: mar mag 12, 2009 12:00 am

Re: Caricamento dati rallentato

Messaggio da margottid »

Ho provato anch'io il nuovo file.

Tutto bene, tranne che non vengono correttamente conteggiati i voti contestati per:
- Europee
- Camera
- Senato
La sezione rimane rossa, in presenza di voti contestati, anche se il conteggio è corretto.

Per gli altri tipi di consultazioni (Comunali, Provinciali, Referendum, Ballottaggio) la presenza di voti contestati - compresi i voti di lista contestati - non segnala falsi positivi.


Carina la colorazione diversa della sezione a seconda dello stato, sarebbe forse utile aggiungere una legenda all'inizio o alla fine della pagina, oppure un messaggio tooltip quando si passa col mouse sul numero di una sezione che indichi in che stato si trova (es.: "Nessuna affluenza caricata", "Caricate solo affluenze parziali", "Inserire i voti al candidato", "Inserire i voti di lista", ecc...).

Ho però notato che, nelle consultazioni Comunali, mentre per i Comuni superiori a 15.000 abitanti, quando la sezione è OK diventa di colore verde (#99CC33, inconfondibile perché - anche per le liste - sta ad indicare che è tutto a posto), per i Comuni sotto i 15.000 abitanti diventa di colore "pale green" (#98FB98), un verdino più chiaro, che confonde, perché sembra che la sezione non sia ancora completa.
È lo stesso colore che si ha dopo aver inserito i voti al Sindaco, e prima di inserire i voti ai Consiglieri: dopo aver inserito i voti ai Consiglieri, le liste diventano verdi, ma le sezioni rimangono verdine.
Il motivo potrebbe essere dovuto al fatto che le tabelle per i voti ai Consiglieri sono diverse a seconda se il Comune è sopra o sotto i 15.000 abitanti (visto che sopra i 15.000 abitanti bisogna inserire prima anche i voti di lista, la cui somma può differire dal totale dei voti dati al Sindaco che sostengono)?


Infine, ma questa è una finezza, se da "Autorizza Comuni" elimino i dati dello spoglio per una consultazione, le sezioni rimangono colorate allo stato precedente, mentre ora - con la nuova tabella per il controllo delle sezioni - bisognerebbe cancellare la situazione degli stati relativi a quella consultazione.
Stessa cosa quando si elimina completamente la consultazione, ma in questo caso è meno grave, perché l'id_cons non verrà più utilizzato, e l'unico "danno" è avere dei record inutilizzati nella tabella soraldo_ele_controllosez, senza però alcun impatto visivo sul programma.

   Daniele
roby
Site Admin
Site Admin
Messaggi: 1260
Iscritto il: ven apr 25, 2008 12:00 am
Contatta:

Re: Caricamento dati rallentato

Messaggio da roby »

ho fatto le modifiche secondo i risultati dei tuoi test e fatto anche la parte dei referendum che avevo tralasciato, riallego il file.
Allegati
ele_voti.zip
(16.92 KiB) Scaricato 46 volte
margottid
Newbie
Newbie
Messaggi: 193
Iscritto il: mar mag 12, 2009 12:00 am

Re: Caricamento dati rallentato

Messaggio da margottid »

Ho provato il file.
Il problema della presenza di voti contestati sembra risolto per tutte le consultazioni.

Per i Comuni sotto i 15.000 abitanti continuo a riscontrare dei problemi:
- dopo aver caricato affluenze e voti al candidato Sindaco, la sezione diventa blu (#00BFFF, "deepsky-blue"); quando carico i voti ai Consiglieri, le liste diventano verdi, ma la sezione continua a rimanere blu;
- se carico dei voti ai Candidati Consiglieri che non sono congruenti (es.: più voti totali rispetto al numero di preferenze moltiplicato per il numero dei voti al Sindaco), la sezione rimane blu (anche se la lista si colora di rosso e viene segnalato l'errore prima della tabella dei voti);
- se ad un Candidato Consigliere assegno più voti rispetto ai voti che ha preso il Sindaco (ovvero, la lista a lui collegata), la sezione rimane blu, la lista diventa rossa, ma NON viene segnalato l'errore prima della tabella dei voti (e se si tratta della prima lista non me ne accorgo, perché rimane selezionata e quindi è evidenziata in blu, nascondendo il colore rosso di sfondo).

La mancata segnalazione di errore, nel caso in cui ad un Candidato Consigliere vengano assegnati più voti rispetto ai voti che ha preso la lista, avviene anche nel caso di Comuni oltre i 15.000 abitanti; qui però la sezione diventa rossa, e quando vado sulle liste mi accorgo subito qual è la sezione che dà errore (anche se è la prima) visto che il cursore si posizione sulla voce "Voti di lista" anziché sulla prima lista.

Sarebbe possibile aggiungere un messaggio prima della tabella dei voti, indicando - per esempio - "I voti del candidato n. X sono superiori ai voti di lista"?
Non so però in che momento venga fatto il calcolo, e quindi se sia possibile intercettare il candidato che dà errore PRIMA della visualizzazione della tabella dei voti.
Ovviamente sarebbe sufficiente, nel messaggio di errore, indicare solo il primo candidato che ha dei dati errati (per non appesantire l'interfaccia): quando il numero dei voti viene corretto dall'operatore, se ci sono altri candidati che hanno dei voti non congruenti, questi verranno visualizzati a loro volta, finché non vengono corretti tutti.


Infine, per i Comuni sopra i 15.000 abitanti, se in una sezione NON ci sono voti di lista (e quindi i valori dei voti di lista sono tutti pari a 0) la sezione rimane colorata di verde chiaro: ma questo mi sembra un caso altamente improbabile in una situazione reale...

   Daniele
Rispondi