Inizio io a postare un po' di idee sparse, e inizio con un discorso
riguardante il lato server di skylive.
Prima di tutto facciamo un riepilogo della situazione attuale, che serve
prima di tutto a me per verificare che io abbia compreso come funziona
il sistema (quindi Ivan, se puoi conferma/correggi quello che sto per
scrivere).
Attualmente un programma server gira in un pc all'osservatorio di
pedara, dove sono posizionati i telescopi 1, 2, 3, 4.
Questo programma si occupa di gestire:
1- Le chat e le connessioni dai client in generale
2- l'upload delle varie configurazioni sui server web
3- le connessioni che arrivano dai vari telescopi, da 1 a 4 in LAN
locale, il 5 da remoto ( australia ).
C'e' poi un secondo programma che gira in multiple sessioni, una per
ogni telescopio e quindi 4 a pedara e uno in australia allo stato
attuale, che gestiscono i telescopi e si collegano a questo server.
Non mi e' ben chiaro invece da dove arrivino le informazioni di stato
del tetto e dei sensori pioggia, credo che se ne occupi in maniera
diretta il programma server stesso, oppure ci sia un altro programma
separato che le gestisce e passa le informazioni al server.
Finito il riepilogo, che comunque credo sia in linea di massima
corretto, vorrei fare alcune osservazioni:
1- A Pedara la connettivita' e' limitata, si tratta di una Adsl telecom,
che ha limiti sia di banda che di "stabilita'".
2- Il programma server attualmente sembra subite alcuni rallentamenti
quando e' sotto stress, si nota per i tempi di latenza in chat quando
magari ci sono molte foto in corso. Questi problemi potrebbero non
essere causati dal programma in se ma da un discorso di banda occupata
dagli upload delle esposizioni.
3- Vi sono dei limiti intrinsechi nell'attuale protocollo di
comunicazione, ora non voglio dilungarmi in aspetti molto tecnici
inutili ai fini di questa email, tuttavia a mio modesto parere sarebbe
necessario un ripensamento e una riprogettazione in toto del protocollo
alla luce dell'esperienza accumulata da skylive attualmente, che ne
permetterebbe sicuramente una riscrittura con maggiore
consapevolezza.
In particolare per il punto 3, tengo a precisare che NON e' una critica
al lavoro fatto da Ivan, che direi che ha messo giu' un ottimo sistema
e cio' e' dimostrato oramai dai fatti.
E' pero' sicuro che anche Ivan ha creato i software e il protocollo
"lungo la strada" in quanto come tutti i progetti nuovi quando si parte
non si sa bene dove si andra' a finire, e quindi e' difficile progettare
una cosa dall'inizio.
Penso che attualmente sia arrivato il momento in cui ci si puo' sedere a
tavolino, fare una bella progettazione del protocollo alla luce
dell'esperienza acquisita, e riscriverne uno nuovo sicuramente piu'
adatto alle esigenze attuali e soprattutto future di skylive come
progetto.
Non ultimo, ora che io, ita595 e spero altri si possono aggiungere allo
sviluppo software fino ad oggi seguito solo da Ivan, avere piu'
"manovalanza informatica" sicuramente puo' dare un ottimo apporto in
termini di scrittura del software.
Visto che questa mail sta gia' diventando chilometrica comunque, ora non
mi soffermo piu' sul protocollo e sulle caratteristiche del software, ma
tornerei al filo del discorso e parlerei di architettura.
Per riassumere attualmente abbiamo uno schema simile a questo:
http://www.astronomix.org/skylive-rete1.png
Dove il sistema funziona in questo modo:
- Il server skylive aggiorna sul server aruba le configurazioni dei
telescopi in file txt statici
- I telescopi aggiornano sul server skylive.astronomix.org i live, le
guide, le esposizioni
- I telescopi sono connessi al server skylive per ricevere comandi e
dare risposte in semi-realtime
- Il server skylive.astronomix.org e' collegato al server aruba per
aggiornare gli archivi
- I client si collegano a:
- server aruba per scaricare le configurazioni generiche
- server skylive per comandi/chat e roba in real-time
- server skylive.astronimix.org per scaricare live, foto, ultima foto
Secondo il mio personalissimo parere, una situazione definitiva dovrebbe
arrivare al punto in cui i client si connettono SOLO al server skylive
e, tramite protocollo nuovo, attraverso quell'unica configurazione
scarichino i live, gestiscano i comandi ai telescopi, gestiscano la
chat, prelevino eventuali configurazioni etc. Insomma, ai client
dovrebbe servire un'unica connessione per tutto.
I telescopi dovrebbero tutti connettersi per tutto solo al server
skylive.
Il server skylive deve collegari al server aruba solo per l'archivio
foto.
Va da se che in questo modo il server skylive dobrebbe poter gestire una
scalabilita' in termini anche di banda non limitata da una adsl.
La mia idea quindi, per poter partire a ripensare il protocollo sarebbe
questa:
Come gia' accennato ad Ivan e come gia' in parte iniziato a fare, io
posso mettere a disposizione un server collocato in un datacenter
della mia azienda ( a titolo gratuito ora e sempre ) per skylive.
Si tratterebbe di una macchina dedicata a cui ovviamente daro' accesso
amministrativo anche ad Ivan e a chi dello staff skylive volesse
occuparsene, oltre che avere il mio supporto. Il server e' posizionato
su connessione di tipo business-grade da 10 megabit simmetrici con ip
pubblico statico, il datacenter in cui sono sistemati i server hanno
gruppo di continuita' etc etc.
Ora, io andrei a riscrivere un server che gestisca, lato telescopi e
lato client, un protocollo identico a quello attuale perche' possa
girare su piattaforma linux e che sia scalabile, in cui il protocollo
sia comunque esterno al core ( modulare ) e che quindi ci permetta di
cambiarlo facilmente in futuro. Questo software lo posizionerei sul
server skylive.astronomix.org, e andrebbe ad aggiornare configurazioni
generiche etc tutte sul server web sulla stessa macchina.
I telescopi si connetterebbero tutti quindi via internet a tale server
al posto di quello attualmente posizionato a Pedara in maniera diretta.
I client so connetterebbero, prenderebbero le configurazioni, i live
etc, tutti da questo server. Aruba verrebbe usato solo per l'archivio
per via del grande spazio a disposizione.
Insomma avremmo un risultato simile a costituire la nostra base di
partenza:
http://www.astronomix.org/skylive-rete2.png
A questo punto a voi la parola, scusatemi per la lungaggine
-- Franco (nextime) Lanza Busto Arsizio - Italy SIP://casa@casa.nexlab.it NO TCPA: http://www.no1984.org you can download my public key at: http://danex.nexlab.it/nextime.asc || Key Servers Key ID = D6132D50 Key fingerprint = 66ED 5211 9D59 DA53 1DF7 4189 DFED F580 D613 2D50 ----------------------------------- echo 16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D212153574F444E49572045535520454D20454B414D204F54204847554F4E452059415020544F4E4E4143205345544147204C4C4942snlbxq | dc -----------------------------------
This archive was generated by hypermail 2.2.0 : Sun 18 Nov 2007 - 17:28:02 CET