[Verdebinario] assistenza gasdotto
Giuseppe De Marco
peppelinux a yahoo.it
Mar 24 Maggio 2011 09:25:35 CDT
>ragazzi, dopo tutti gli scambi tecnici ciotoverdiacari...
> gasdotto funzia?
Irè la risposta è sì, funziona, ma non ci siamo, perlomeno non come servizio
all'utenza finale.
Io accedo a GasDotto e riesco, seppur con lunghe attese, a lavorarci. Ma alle
volte devo interrompere tutto e ricaricare tutta la pagina. In poche parole è
quasi inutilizzabile.
Gli errori che riporta vanno e vengono e dipendono da due fattori:
1) la lentezza che il server ha nel rispondere alle MILLE chiamate che il codice
javascript di gasdotto compie (In questo dobbiamo ammettere che GasDotto è stato
programmato in modalità masochismo, versione hard-coded).
Spiegazione:
Per caricare l'Home Page Vengono compiute 20 chiamate (in POST) al nostro
Server. Per ognuna di queste la connessione con Apache avviene in meno di 200ms
ma, il tempo che impiega Apache/PHP a processare la richiesta va, per oguna di
queste, dai 3,48 secondi ai 6.73 secondi. Il risultato è che per caricare
interamente la pagina occorrono 2,23 minuti circa.
2) Javascript, ovvero, il costruttore dei dati e l'interfaccia di GasDotto,
riempie quasi tutte le sue variabili con queste chiamate. Se una di queste
dovesse fallire per "tempo massimo di risposta del server esaurito" Javascript
si ritrova la variabile vuota e riporta i fatidici messaggi: "c is null" &co.
Allo stato attuale abbiamo due problemi:
1 è nostro. Ovvero, perchè Apache si comporta così ? (l'abbiamo configurato noi
per limitare le risorse oppure è una condizione che si verifica solo quando
abbiamo a che fare con software farlocco)
2 è dell'utenza finale. Che a causa di questo andazzo non riesce ad usare il
servizio.
In merito ai precedenti dubbi sui contenuti statici:
I contenuti statici vengono scaricati in una manciata di millisecondi, il
problema è PHP. I metodi che causano lentezza sono tutti POST.
Vi faccio questo esempio. Javascript richiede a questo indirizzo:
http://www.utopiesorridenti.com/gasdotto-2.0.1/gasdotto/server/server.php?action=get
i seguenti parametri (con metodo POST):
{"type":"Measure", "has":[]}
il nostro server risponde, dopo 6,43secondi, con:
[{"type":"Measure","id":"1","name":"Non
Specificato","symbol":"?"},{"type":"Measure","id":"2","name":"Chili","symbol":"kg"},{"type":"Measure","id":"3","name":"Litri","symbol":"l"},{"type":"Measure","id":"4","name":"Pezzi","symbol":"pezzi"}]
Ora anche se sia la richiesta che la risposta contengono molti, e dico, molti
più dati (come ad esempio l'intera anagrafica degli utenti registrati), il
nostro Server sempre 6 secondi impiega nel rispondere.
Questo è il nostro problema con GasDotto.
Il problema, invece, all'utenza, che a causa di queste lentezze, ad alcuni di
loro viene interrotta bruscamente la connessione o và in timeout.
Maggiori informazioni sulla lista
Verdebinario