[Zope-it] batch: domanda tosta
Giorgio Andreoletti
giorgio.andreoletti@mentelocale.it
Mon, 10 Mar 2003 20:25:40 +0100
Ciao,
il tuo problema mi ricorda uno simile che ho dovuto affrontare qualche mese=
=20
fa: avevo una serie di utenti (tanti!) che contemporaneamente mi chiedevano=
=20
delle informazioni, che il mio server doveva andare a reperire interrogando=
=20
via FTP un altro server : questo secondo server poteva rispondere ad una=20
sola richiesta alla volta, quindi in pratica si trattava di rendere seriale=
=20
uno scambio di dati che iniziava, invece, come parallelo. Me la sono cavata=
=20
con qualche centinaio di righe di codice python, quindi niente di=20
mastodontico, implementando fra l'altro controlli di ogni natura sulla=20
consistenza dei dati in transito (l'altro server =E8 a scelta tra un certo=
=20
numero disponibili, da scegliere in base al tipo di richiesta, ed =E8=20
connesso ad internet con linee genericamente di bassa qualit=E0, quindi ci=
=20
sono parecchie situazioni critiche da affrontare!).
La soluzione pi=F9 semplice che mi viene di proporti =E8 di utilizzare il=20
filesystem come archivio per la coda dei dati; ti serve uno script che=20
inserisca in questa coda (cio=E8 genera un file e lo piazza nella cartella=
=20
sul filesystem), uno che ciclicamente legge quella cartella ed elabora i=20
risultati rendendoli disponibili, per esempio, in un altro file, magari in=
=20
un'altra cartella del filesystem, e quindi uno script che tiene l'utente in=
=20
attesa finch=E8 l'output della sua richiesta non =E8 disponibile, e gli=
propone=20
l'output una volta che questo diventi disponibile. Non =E8 cosa=20
particolarmente difficile da farsi in python, ma la domanda che mi sorge =E8=
=20
: quanto impatterebbe tutto questo sulle prestazioni ? Non sapendo bene=20
quale sia il tuo paramentro di riferimento prestazionale, mi rimane=20
difficile valutare l'entit=E0 dell'impatto negativo che questa soluzione=20
potrebbe avere....
vabb=E8, ti ho buttato l=EC una idea, magari da questa ti verr=E0 in mente=
=20
qualcosa di meglio !
ciao
Giorgio
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D
Giorgio Andreoletti - mentelocale S.r.l.
responsabile hardware e networking
responsabile sviluppo web
www.mentelocale.it
giorgio.andreoletti@mentelocale.it
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=20