[Zope-it] batch: domanda tosta

Glauco glauco@allevatori.com
Tue, 11 Mar 2003 18:18:29 +0100


Guido Notari wrote:

>Pensavo anche io ad un meccanismo tipo FIFO, basato su di una tabella di
>Postgres.
>Ora, i problemi da risolvere fondamentalmente sono due: fare in modo che
>non ci siano conflitti nel riempire la tabella, e come gestire il processo
>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 stessa
>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 elaborazioni.
>Direi che un cron job potrebbe essere un punto di partenza.
>
>Tu in pratica come hai gestito la cosa?
>
Non capisco il tuo dubbio , se n processi contemporaneamente richiedono 
la stessa cosa avrai tre append nello spooler .
Il Demone o Cron che esegue fisicamente il pop preleva il primo, lo 
elabora, il secondo e cosė via .. Hai serializzato il processo.
Questo il linea teorica del funzionamento della FIFO .
A questo punto devi decidere tu  come gestire la concorrenza tra i 
processi .  
Considera che non č necessario utilizzare Postgres, io lo uso perchč 
devo immagazzinare un mare di cose compreso un documento intero XML 
formattato, se tu devi solo immagazzinare ad esempio  URL e Parametri 
urlencoded forse te la cavi con un file.
Imho il Database č pių sicuro.

cmq senza sapere l'entita delle richieste e lo stress HW č difficile 
dare delle idee giuste

Ciao
Glauco