[Zope-it] batch: domanda tosta

Guido Notari gnotari@linkgroup.it
Tue, 11 Mar 2003 15:51:17 +0100


Glauco wrote:

>  >Ho bisogno di un prodotto/soluzione per Zope, per realizzare la
>  >funzionalit=E0 di 'batch processing'.
>  >
>  >Mi serve cio=E9 qualcosa che si incarichi di gestire una coda di
richieste
>  >verso il database, che non possono essere servite comtemporaneament=
e,
per
>  >questioni di performance -- questo =E8 un punto fermo.

>  In un problema simile al tuo ma diverso per mole di dati , ho realiz=
zato

>  delle funzioni python che interrogano dei Web Services su un
>  ApplicationServer non gestito da me e di cui non so nulla delle
>  prestazioni,  imposto un TimeOut e se non mi arriva la risposta entr=
o un

>  certo tempo la accodo ad una fifo basata su Postgres. Un Demone
>   preriodicamente esegue il pop e la tiene vuota. Quando la risposta =
=E8
>  disponibile viene visualizzata sulla HP dell'utente.

Pensavo anche io ad un meccanismo tipo FIFO, basato su di una tabella d=
i
Postgres.
Ora, i problemi da risolvere fondamentalmente sono due: fare in modo ch=
e
non ci siano conflitti nel riempire la tabella, e come gestire il proce=
sso
che la svuota.
Per quanto riguarda il riempimento della coda, devo far in modo che due=

request semi-contemporanee non richiedano entrambe di cominciare la ste=
ssa
elaborazione. Questo, dopo aver controllato comunque che l'elaborazione=

stessa non e` ancora stata servita.
Va poi gestito il processo che, svuotando la coda, esegue le elaborazio=
ni.
Direi che un cron job potrebbe essere un punto di partenza.

Tu in pratica come hai gestito la cosa?

ciao
Guido
=